Annotation of embedaddon/php/ext/intl/tests/locale_parse_locale.phpt, revision 1.1.1.2

1.1       misho       1: --TEST--
1.1.1.2 ! misho       2: locale_parse_locale() icu <= 4.2
1.1       misho       3: --SKIPIF--
                      4: <?php if( !extension_loaded( 'intl' ) ) print 'skip'; ?>
1.1.1.2 ! misho       5: <?php if(version_compare(INTL_ICU_VERSION, '4.3', '<') != 1) print 'skip'; ?>
1.1       misho       6: --FILE--
                      7: <?php
                      8: 
                      9: /*
                     10:  * Try parsing different Locales
                     11:  * with Procedural and Object methods.
                     12:  */
                     13: 
                     14: function ut_main()
                     15: {
                     16:     $res_str = '';
                     17: 
                     18:     $locales = array(
                     19:         'uk-ua_CALIFORNIA@currency=;currency=GRN',
                     20:         'root',
                     21:         'uk@currency=EURO',
                     22:         'Hindi',
                     23: //Simple language subtag
                     24:         'de',
                     25:         'fr',
                     26:         'ja',
                     27:         'i-enochian', //(example of a grandfathered tag)
                     28: //Language subtag plus Script subtag:
                     29:         'zh-Hant',
                     30:         'zh-Hans',
                     31:         'sr-Cyrl',
                     32:         'sr-Latn',
                     33: //Language-Script-Region
                     34:         'zh-Hans-CN',
                     35:         'sr-Latn-CS',
                     36: //Language-Variant
                     37:         'sl-rozaj',
                     38:         'sl-nedis',
                     39: //Language-Region-Variant
                     40:         'de-CH-1901',
                     41:         'sl-IT-nedis',
                     42: //Language-Script-Region-Variant
                     43:         'sl-Latn-IT-nedis',
                     44: //Language-Region:
                     45:         'de-DE',
                     46:         'en-US',
                     47:         'es-419',
                     48: //Private use subtags:
                     49:         'de-CH-x-phonebk',
                     50:         'az-Arab-x-AZE-derbend',
                     51: //Extended language subtags
                     52:         'zh-min',
                     53:         'zh-min-nan-Hant-CN',
                     54: //Private use registry values
                     55:         'qaa-Qaaa-QM-x-southern',
                     56:         'sr-Latn-QM',
                     57:         'sr-Qaaa-CS',
                     58: /*Tags that use extensions (examples ONLY: extensions MUST be defined
                     59:    by revision or update to this document or by RFC): */
                     60:         'en-US-u-islamCal',
                     61:         'zh-CN-a-myExt-x-private',
                     62:         'en-a-myExt-b-another',
                     63: //Some Invalid Tags:
                     64:         'de-419-DE',
                     65:         'a-DE',
                     66:         'ar-a-aaa-b-bbb-a-ccc'
                     67:     );
                     68: 
                     69: 
                     70:     $res_str = '';
                     71: 
                     72:     foreach( $locales as $locale )
                     73:     {
                     74:         $arr = ut_loc_locale_parse( $locale);
                     75:         $res_str .= "---------------------\n";
                     76:         $res_str .= "$locale:\n";
                     77:         if( $arr){
                     78:             foreach( $arr as $key => $value){
                     79:                     $res_str .= "$key : '$value' , ";
                     80:             }
                     81:             $res_str = rtrim($res_str);
                     82:         }
                     83:         else{
                     84:             $res_str .= "No values found from Locale parsing.";
                     85:         }
                     86:         $res_str .= "\n";
                     87:     }
                     88: 
                     89:     $res_str .= "\n";
                     90:     return $res_str;
                     91: 
                     92: }
                     93: 
                     94: include_once( 'ut_common.inc' );
                     95: ut_run();
                     96: 
                     97: ?>
                     98: --EXPECTF--
                     99: ---------------------
                    100: uk-ua_CALIFORNIA@currency=;currency=GRN:
                    101: language : 'uk' , region : 'UA' , variant0 : 'CALIFORNIA' ,
                    102: ---------------------
                    103: root:
                    104: language : 'root' ,
                    105: ---------------------
                    106: uk@currency=EURO:
                    107: language : 'uk' ,
                    108: ---------------------
                    109: Hindi:
                    110: language : 'hindi' ,
                    111: ---------------------
                    112: de:
                    113: language : 'de' ,
                    114: ---------------------
                    115: fr:
                    116: language : 'fr' ,
                    117: ---------------------
                    118: ja:
                    119: language : 'ja' ,
                    120: ---------------------
                    121: i-enochian:
                    122: grandfathered : 'i-enochian' ,
                    123: ---------------------
                    124: zh-Hant:
                    125: language : 'zh' , script : 'Hant' ,
                    126: ---------------------
                    127: zh-Hans:
                    128: language : 'zh' , script : 'Hans' ,
                    129: ---------------------
                    130: sr-Cyrl:
                    131: language : 'sr' , script : 'Cyrl' ,
                    132: ---------------------
                    133: sr-Latn:
                    134: language : 'sr' , script : 'Latn' ,
                    135: ---------------------
                    136: zh-Hans-CN:
                    137: language : 'zh' , script : 'Hans' , region : 'CN' ,
                    138: ---------------------
                    139: sr-Latn-CS:
                    140: language : 'sr' , script : 'Latn' , region : 'CS' ,
                    141: ---------------------
                    142: sl-rozaj:
                    143: language : 'sl' ,%r( region : 'ROZAJ' ,)?%r
                    144: ---------------------
                    145: sl-nedis:
                    146: language : 'sl' ,%r( region : 'NEDIS' ,)?%r
                    147: ---------------------
                    148: de-CH-1901:
                    149: language : 'de' , region : 'CH' , variant0 : '1901' ,
                    150: ---------------------
                    151: sl-IT-nedis:
                    152: language : 'sl' , region : 'IT' , variant0 : 'NEDIS' ,
                    153: ---------------------
                    154: sl-Latn-IT-nedis:
                    155: language : 'sl' , script : 'Latn' , region : 'IT' , variant0 : 'NEDIS' ,
                    156: ---------------------
                    157: de-DE:
                    158: language : 'de' , region : 'DE' ,
                    159: ---------------------
                    160: en-US:
                    161: language : 'en' , region : 'US' ,
                    162: ---------------------
                    163: es-419:
                    164: language : 'es' , region : '419' ,
                    165: ---------------------
                    166: de-CH-x-phonebk:
                    167: language : 'de' , region : 'CH' , private0 : 'phonebk' ,
                    168: ---------------------
                    169: az-Arab-x-AZE-derbend:
                    170: language : 'az' , script : 'Arab' , private0 : 'AZE' , private1 : 'derbend' ,
                    171: ---------------------
                    172: zh-min:
                    173: grandfathered : 'zh-min' ,
                    174: ---------------------
                    175: zh-min-nan-Hant-CN:
                    176: language : 'zh' , region : 'MIN' , variant0 : 'NAN' , variant1 : 'HANT' , variant2 : 'CN' ,
                    177: ---------------------
                    178: qaa-Qaaa-QM-x-southern:
                    179: language : 'qaa' , script : 'Qaaa' , region : 'QM' , private0 : 'southern' ,
                    180: ---------------------
                    181: sr-Latn-QM:
                    182: language : 'sr' , script : 'Latn' , region : 'QM' ,
                    183: ---------------------
                    184: sr-Qaaa-CS:
                    185: language : 'sr' , script : 'Qaaa' , region : 'CS' ,
                    186: ---------------------
                    187: en-US-u-islamCal:
                    188: language : 'en' , region : 'US' ,
                    189: ---------------------
                    190: zh-CN-a-myExt-x-private:
                    191: language : 'zh' , region : 'CN' , private0 : 'private' ,
                    192: ---------------------
                    193: en-a-myExt-b-another:
                    194: language : 'en' ,
                    195: ---------------------
                    196: de-419-DE:
                    197: language : 'de' , region : '419' , variant0 : 'DE' ,
                    198: ---------------------
                    199: a-DE:
                    200: No values found from Locale parsing.
                    201: ---------------------
                    202: ar-a-aaa-b-bbb-a-ccc:
                    203: language : 'ar' ,

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>