Annotation of embedaddon/php/ext/intl/tests/collator_sort_with_sort_keys.phpt, revision 1.1.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>