Annotation of embedaddon/php/ext/intl/tests/collator_asort_variant2.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: asort()
        !             3: --SKIPIF--
        !             4: <?php if( !extension_loaded( 'intl' ) ) print 'skip'; ?>
        !             5: <?php if (version_compare(INTL_ICU_VERSION, '51.2') < 0) die('skip for ICU >= 51.2'); ?>
        !             6: --FILE--
        !             7: <?php
        !             8: 
        !             9: /*
        !            10:  * Sort associative arrays using various locales.
        !            11:  */
        !            12: 
        !            13: 
        !            14: $test_num = 1;
        !            15: 
        !            16: /*
        !            17:  * Sort various arrays in specified locale.
        !            18:  */
        !            19: function sort_arrays( $locale, $test_arrays, $sort_flag = Collator::SORT_REGULAR )
        !            20: {
        !            21:     $res_str = '';
        !            22: 
        !            23:     $coll = ut_coll_create( $locale );
        !            24: 
        !            25:     foreach( $test_arrays as $test_array )
        !            26:     {
        !            27:         // Try to sort test data.
        !            28:         $res_val = ut_coll_asort( $coll, $test_array, $sort_flag );
        !            29: 
        !            30:         // Return output data.
        !            31:         $res_dump = "\n" . dump( $test_array ) .
        !            32:                     "\n Result: " . dump( $res_val );
        !            33: 
        !            34:                // Preppend test signature to output string
        !            35:         $md5 = md5( $res_dump );
        !            36: 
        !            37:         global $test_num;
        !            38:         
        !            39:         $res_str .= "\n\n".
        !            40:                     "Test $test_num.$md5:" .
        !            41:                     $res_dump;
        !            42:         ++$test_num;
        !            43:     }
        !            44: 
        !            45:     return $res_str;
        !            46: }
        !            47: 
        !            48: /*
        !            49:  * Test main function.
        !            50:  */
        !            51: function ut_main()
        !            52: {
        !            53:     global $test_num;
        !            54:     $test_num = 1;
        !            55:     $res_str = '';
        !            56: 
        !            57:     // Sort an array in SORT_REGULAR mode using en_US locale.
        !            58:     $test_params = array(
        !            59:         array( 'd' => 'y'  ,
        !            60:                'c' => 'i'  ,
        !            61:                'a' => 'k'  ),
        !            62: 
        !            63:         array( 'a' => 'a'  ,
        !            64:                'b' => 'aaa',
        !            65:                'c' => 'aa' ),
        !            66: 
        !            67:         array( 'a'  => 'a' ,
        !            68:                'aaa'=> 'a' ,
        !            69:                'aa' => 'a' ),
        !            70: 
        !            71:         array( '1' => 'abc',
        !            72:                '5' => '!'  ,
        !            73:                '2' => null ,
        !            74:                '7' => ''   ),
        !            75: 
        !            76:         array( '1' => '100',
        !            77:                '2' => '25' ,
        !            78:                '3' => '36' ),
        !            79: 
        !            80:         array( '1' => 5    ,
        !            81:                '2' => '30' ,
        !            82:                '3' => 2    )
        !            83:     );
        !            84: 
        !            85:     $res_str .= sort_arrays( 'en_US', $test_params );
        !            86: 
        !            87:     // Sort an array in SORT_STRING mode using en_US locale.
        !            88:     $test_params = array(
        !            89:         array( '1' => '100',
        !            90:                '2' => '25' ,
        !            91:                '3' => '36' ),
        !            92: 
        !            93:         array( '1' => 5    ,
        !            94:                '2' => '30' ,
        !            95:                '3' => 2    ),
        !            96: 
        !            97:         array( '1' => 'd'  ,
        !            98:                '2' => ''   ,
        !            99:                '3' => ' a' ),
        !           100: 
        !           101:         array( '1' => 'y'  ,
        !           102:                '2' => 'k'  ,
        !           103:                '3' => 'i'  )
        !           104:     );
        !           105: 
        !           106:     $res_str .= sort_arrays( 'en_US', $test_params, Collator::SORT_STRING );
        !           107: 
        !           108:     // Sort a non-ASCII array using ru_RU locale.
        !           109:     $test_params = array(
        !           110:         array( 'п' => 'у',
        !           111:                'б' => 'в',
        !           112:                'е' => 'а' ),
        !           113: 
        !           114:         array( '1' => 'п',
        !           115:                '4' => '',
        !           116:                '7' => 'd',
        !           117:                '2' => 'пп' )
        !           118:     );
        !           119: 
        !           120:     $res_str .= sort_arrays( 'ru_RU', $test_params );
        !           121: 
        !           122: 
        !           123:     // Sort an array using Lithuanian locale.
        !           124:     $test_params = array(
        !           125:         array( 'd' => 'y',
        !           126:                'c' => 'i',
        !           127:                'a' => 'k' )
        !           128:     );
        !           129: 
        !           130:     $res_str .= sort_arrays( 'lt_LT', $test_params );
        !           131: 
        !           132:     return $res_str . "\n";
        !           133: }
        !           134: 
        !           135: include_once( 'ut_common.inc' );
        !           136: ut_run();
        !           137: ?>
        !           138: --EXPECT--
        !           139: Test 1.162b81ac12878b817fc39063097e45b5:
        !           140: array (
        !           141:   'c' => 'i',
        !           142:   'a' => 'k',
        !           143:   'd' => 'y',
        !           144: )
        !           145:  Result: true
        !           146: 
        !           147: Test 2.93d96e22f692d8a281b0a389f01f8d1e:
        !           148: array (
        !           149:   'a' => 'a',
        !           150:   'c' => 'aa',
        !           151:   'b' => 'aaa',
        !           152: )
        !           153:  Result: true
        !           154: 
        !           155: Test 3.9f25de4482bc7b58de508e278113317c:
        !           156: array (
        !           157:   'aa' => 'a',
        !           158:   'aaa' => 'a',
        !           159:   'a' => 'a',
        !           160: )
        !           161:  Result: true
        !           162: 
        !           163: Test 4.a85a41ea78e45b651080cfd98c0b431d:
        !           164: array (
        !           165:   7 => '',
        !           166:   2 => NULL,
        !           167:   5 => '!',
        !           168:   1 => 'abc',
        !           169: )
        !           170:  Result: true
        !           171: 
        !           172: Test 5.99dc71f405b286e03d489061b36e6900:
        !           173: array (
        !           174:   2 => '25',
        !           175:   3 => '36',
        !           176:   1 => '100',
        !           177: )
        !           178:  Result: true
        !           179: 
        !           180: Test 6.bf5bba243307c9d12934e756ad4be190:
        !           181: array (
        !           182:   3 => 2,
        !           183:   1 => 5,
        !           184:   2 => '30',
        !           185: )
        !           186:  Result: true
        !           187: 
        !           188: Test 7.e4ee7024c61476e9e7a6c28b5e47df6f:
        !           189: array (
        !           190:   1 => '100',
        !           191:   2 => '25',
        !           192:   3 => '36',
        !           193: )
        !           194:  Result: true
        !           195: 
        !           196: Test 8.5fa7033dd43784be0db1474eb48b83c8:
        !           197: array (
        !           198:   3 => 2,
        !           199:   2 => '30',
        !           200:   1 => 5,
        !           201: )
        !           202:  Result: true
        !           203: 
        !           204: Test 9.588cdf4692bc09aa92ffe7e48f9e4579:
        !           205: array (
        !           206:   2 => '',
        !           207:   3 => ' a',
        !           208:   1 => 'd',
        !           209: )
        !           210:  Result: true
        !           211: 
        !           212: Test 10.be02641a47ebcccd23e4183ca3a415f7:
        !           213: array (
        !           214:   3 => 'i',
        !           215:   2 => 'k',
        !           216:   1 => 'y',
        !           217: )
        !           218:  Result: true
        !           219: 
        !           220: Test 11.153d9b11d1e5936afc917a94a4e11f34:
        !           221: array (
        !           222:   'е' => 'а',
        !           223:   'б' => 'в',
        !           224:   'п' => 'у',
        !           225: )
        !           226:  Result: true
        !           227: 
        !           228: Test 12.e1f5cb037b564dce39ffbd0a61562d59:
        !           229: array (
        !           230:   4 => '',
        !           231:   1 => 'п',
        !           232:   2 => 'пп',
        !           233:   7 => 'd',
        !           234: )
        !           235:  Result: true
        !           236: 
        !           237: Test 13.8800d48abb960a59002eef77f1d73ae0:
        !           238: array (
        !           239:   'c' => 'i',
        !           240:   'd' => 'y',
        !           241:   'a' => 'k',
        !           242: )
        !           243:  Result: true

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