Changeset 37716
- Timestamp:
- 06/15/2016 05:40:23 PM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/tests/phpunit/tests/functions.php
r37705 r37716 832 832 833 833 /** 834 * @ticket 36790 835 * @dataProvider data_wp_maybe_decline_date 836 */ 837 function test_wp_maybe_decline_date( $test_locale, $input, $output ) { 838 global $locale, $wp_locale; 839 840 $locale_original = $locale; 841 $wp_locale_original = $wp_locale; 842 843 add_filter( 'gettext_with_context', array( $this, '_enable_months_names_declension' ), 10, 4 ); 844 845 $month_names = $this->_get_months_names( $test_locale ); 846 847 $locale = $test_locale; 848 $wp_locale->month = $month_names['month']; 849 $wp_locale->month_genitive = $month_names['month_genitive']; 850 851 $this->assertEquals( $output, wp_maybe_decline_date( $input ) ); 852 853 remove_filter( 'gettext_with_context', array( $this, '_enable_months_names_declension' ), 10, 4 ); 854 855 $locale = $locale_original; 856 $wp_locale = $wp_locale_original; 857 } 858 859 function _enable_months_names_declension( $translation, $text, $context, $domain ) { 860 if ( 'decline months names: on or off' === $context ) { 861 $translation = 'on'; 862 } 863 864 return $translation; 865 } 866 867 function _get_months_names( $locale ) { 868 switch ( $locale ) { 869 case 'ru_RU': 870 $months = array( 871 'month' => array( 'Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь' ), 872 'month_genitive' => array( 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня', 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря' ), 873 ); 874 break; 875 876 case 'pl_PL': 877 $months = array( 878 'month' => array( 'Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień' ), 879 'month_genitive' => array( 'stycznia', 'lutego', 'marca', 'kwietnia', 'maja', 'czerwca', 'lipca', 'sierpnia', 'września', 'października', 'listopada', 'grudnia' ), 880 ); 881 break; 882 883 case 'hr': 884 $months = array( 885 'month' => array( 'Siječanj', 'Veljača', 'Ožujak', 'Travanj', 'Svibanj', 'Lipanj', 'Srpanj', 'Kolovoz', 'Rujan', 'Listopad', 'Studeni', 'Prosinac' ), 886 'month_genitive' => array( 'siječnja', 'veljače', 'ožujka', 'ožujka', 'svibnja', 'lipnja', 'srpnja', 'kolovoza', 'rujna', 'listopada', 'studenoga', 'prosinca' ), 887 ); 888 break; 889 890 case 'ca': 891 $months = array( 892 'month' => array( 'gener', 'febrer', 'març', 'abril', 'maig', 'juny', 'juliol', 'agost', 'setembre', 'octubre', 'novembre', 'desembre' ), 893 'month_genitive' => array( 'gener', 'febrer', 'març', 'abril', 'maig', 'juny', 'juliol', 'agost', 'setembre', 'octubre', 'novembre', 'desembre' ), 894 ); 895 break; 896 897 case 'cs_CZ': 898 $months = array( 899 'month' => array( 'Leden', 'Únor', 'Březen', 'Duben', 'Květen', 'Červen', 'Červenec', 'Srpen', 'Září', 'Říjen', 'Listopad', 'Prosinec' ), 900 'month_genitive' => array( 'ledna', 'února', 'března', 'dubna', 'května', 'června', 'července', 'srpna', 'září', 'října', 'listopadu', 'prosince' ), 901 ); 902 break; 903 904 default: 905 $months = array( 906 'month' => array( 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' ), 907 'month_genitive' => array( 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' ) 908 ); 909 } 910 911 return $months; 912 } 913 914 function data_wp_maybe_decline_date() { 915 return array( 916 array( 'ru_RU', '21 Июнь', '21 июня' ), 917 array( 'ru_RU', '1 Январь 2016', '1 января 2016' ), 918 array( 'pl_PL', '1 Styczeń', '1 stycznia' ), 919 array( 'hr', '1. Siječanj', '1. siječnja' ), 920 array( 'ca', '1 de abril', "1 d'abril" ), 921 array( 'cs_CZ', '1. Červen', '1. června' ), 922 array( 'cs_CZ', '1. Červenec', '1. července' ), 923 ); 924 } 925 926 /** 834 927 * @ticket 36054 835 928 * @dataProvider datetime_provider
Note: See TracChangeset
for help on using the changeset viewer.