Annotation of embedaddon/php/ext/intl/tests/collator_sort_with_sort_keys.phpt, revision 1.1
1.1 ! misho 1: --TEST--
! 2: sort_with_sort_keys()
! 3: --SKIPIF--
! 4: <?php if( !extension_loaded( 'intl' ) ) print 'skip'; ?>
! 5: --FILE--
! 6: <?php
! 7:
! 8: /*
! 9: * Sort arrays using various locales.
! 10: */
! 11:
! 12:
! 13: $test_num = 1;
! 14:
! 15: /*
! 16: * Sort arrays in the given list using specified locale.
! 17: */
! 18: function sort_arrays( $locale, $arrays )
! 19: {
! 20: $res_str = '';
! 21:
! 22: $coll = ut_coll_create( $locale );
! 23:
! 24: foreach( $arrays as $array )
! 25: {
! 26: // Sort array values
! 27: $res_val = ut_coll_sort_with_sort_keys( $coll, $array );
! 28:
! 29: // Concatenate the sorted array and function result
! 30: // with output string.
! 31: $res_dump = "\n" . dump( $array ) .
! 32: "\n Result: " . dump( $res_val );
! 33:
! 34:
! 35: // Preppend test signature to output string
! 36: $md5 = md5( $res_dump );
! 37:
! 38: global $test_num;
! 39:
! 40: $res_str .= "\n\n".
! 41: "Test $test_num.$md5:" .
! 42: $res_dump;
! 43: ++$test_num;
! 44: }
! 45:
! 46: return $res_str;
! 47: }
! 48:
! 49:
! 50: function ut_main()
! 51: {
! 52: global $test_num;
! 53: $test_num = 1;
! 54: $res_str = '';
! 55:
! 56: // Sort an array in SORT_REGULAR mode using en_US locale.
! 57: $test_params = array(
! 58: array( 'abc', 'abd', 'aaa' ),
! 59: array( 'm' , '1' , '_' ),
! 60: array( 'a' , 'aaa', 'aa' ),
! 61: array( 'ba' , 'b' , 'ab' ),
! 62: array( 'e' , 'c' , 'a' ),
! 63: array( 'd' , '' , ' a' ),
! 64: array( 'd ' , 'f ' , ' a' ),
! 65: array( 'a' , null , '3' ),
! 66: array( 'y' , 'i' , 'k' )
! 67: );
! 68:
! 69: $res_str .= sort_arrays( 'en_US', $test_params );
! 70:
! 71: // Sort a non-ASCII array using ru_RU locale.
! 72: $test_params = array(
! 73: array( 'абг', 'абв', 'ааа', 'abc' ),
! 74: array( 'аа', 'ааа', 'а' )
! 75: );
! 76:
! 77: $res_str .= sort_arrays( 'ru_RU', $test_params );
! 78:
! 79: // Array with data for sorting.
! 80: $test_params = array(
! 81: array( 'y' , 'i' , 'k' )
! 82: );
! 83:
! 84: // Sort an array using Lithuanian locale.
! 85: $res_str .= sort_arrays( 'lt_LT', $test_params );
! 86:
! 87: return $res_str . "\n";
! 88: }
! 89:
! 90: include_once( 'ut_common.inc' );
! 91: ut_run();
! 92: ?>
! 93: --EXPECT--
! 94: Test 1.e8f1cd28133d79ecd660002f1c660d0e:
! 95: array (
! 96: 0 => 'aaa',
! 97: 1 => 'abc',
! 98: 2 => 'abd',
! 99: )
! 100: Result: true
! 101:
! 102: Test 2.c2ded12173dd2996927378cae37eb275:
! 103: array (
! 104: 0 => '_',
! 105: 1 => '1',
! 106: 2 => 'm',
! 107: )
! 108: Result: true
! 109:
! 110: Test 3.54071c968d71cb98c5d379145f8d7d38:
! 111: array (
! 112: 0 => 'a',
! 113: 1 => 'aa',
! 114: 2 => 'aaa',
! 115: )
! 116: Result: true
! 117:
! 118: Test 4.19abe63d6f6dfef65b0e3c9ab4826b07:
! 119: array (
! 120: 0 => 'ab',
! 121: 1 => 'b',
! 122: 2 => 'ba',
! 123: )
! 124: Result: true
! 125:
! 126: Test 5.9a8dc0a9bc771368c2f1fc3d02754610:
! 127: array (
! 128: 0 => 'a',
! 129: 1 => 'c',
! 130: 2 => 'e',
! 131: )
! 132: Result: true
! 133:
! 134: Test 6.923d65739c5219c634616ffd100a50e4:
! 135: array (
! 136: 0 => '',
! 137: 1 => ' a',
! 138: 2 => 'd',
! 139: )
! 140: Result: true
! 141:
! 142: Test 7.289bc2f28e87d3201ec9d7e8477ae1b0:
! 143: array (
! 144: 0 => ' a',
! 145: 1 => 'd ',
! 146: 2 => 'f ',
! 147: )
! 148: Result: true
! 149:
! 150: Test 8.de0fd958484f2377a645835d7fbcf124:
! 151: array (
! 152: 0 => NULL,
! 153: 1 => '3',
! 154: 2 => 'a',
! 155: )
! 156: Result: true
! 157:
! 158: Test 9.dd2b8f0adb37c45d528cad1a0cc0f361:
! 159: array (
! 160: 0 => 'i',
! 161: 1 => 'k',
! 162: 2 => 'y',
! 163: )
! 164: Result: true
! 165:
! 166: Test 10.ca0e38a2e3147dd97070f2128f140934:
! 167: array (
! 168: 0 => 'abc',
! 169: 1 => 'ааа',
! 170: 2 => 'абв',
! 171: 3 => 'абг',
! 172: )
! 173: Result: true
! 174:
! 175: Test 11.91480b10473a0c96a4cd6d88c23c577a:
! 176: array (
! 177: 0 => 'а',
! 178: 1 => 'аа',
! 179: 2 => 'ааа',
! 180: )
! 181: Result: true
! 182:
! 183: Test 12.fdd3fe3981476039164aa000bf9177f2:
! 184: array (
! 185: 0 => 'i',
! 186: 1 => 'y',
! 187: 2 => 'k',
! 188: )
! 189: Result: true
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>