]>
Commit | Line | Data |
---|---|---|
b75a7d8f | 1 | /******************************************************************** |
57a6839d A |
2 | * COPYRIGHT: |
3 | * Copyright (c) 1997-2013, International Business Machines Corporation and | |
b75a7d8f A |
4 | * others. All Rights Reserved. |
5 | ********************************************************************/ | |
6 | /* file name: cbididat.c | |
7 | * encoding: US-ASCII | |
8 | * tab size: 8 (not used) | |
9 | * indentation:4 | |
10 | * | |
11 | * created on: 1999sep22 | |
12 | * created by: Markus W. Scherer | |
13 | */ | |
14 | ||
15 | #include "unicode/utypes.h" | |
16 | #include "unicode/uchar.h" | |
17 | #include "unicode/ubidi.h" | |
18 | #include "cbiditst.h" | |
19 | ||
46f4442e A |
20 | const char * const |
21 | dirPropNames[U_CHAR_DIRECTION_COUNT]={ | |
b75a7d8f | 22 | "L", "R", "EN", "ES", "ET", "AN", "CS", "B", "S", "WS", "ON", |
57a6839d A |
23 | "LRE", "LRO", "AL", "RLE", "RLO", "PDF", "NSM", "BN", |
24 | "FSI", "LRI", "RLI", "PDI" /* new in Unicode 6.3/ICU 52 */ | |
b75a7d8f A |
25 | }; |
26 | ||
374ca955 | 27 | UChar |
46f4442e | 28 | charFromDirProp[U_CHAR_DIRECTION_COUNT]={ |
b75a7d8f A |
29 | /* L R EN ES ET AN CS B S WS ON */ |
30 | 0x61, 0x5d0, 0x30, 0x2f, 0x25, 0x660, 0x2c, 0xa, 0x9, 0x20, 0x26, | |
31 | /* LRE LRO AL RLE RLO PDF NSM BN */ | |
57a6839d A |
32 | 0x202a, 0x202d, 0x627, 0x202b, 0x202e, 0x202c, 0x308, 0x200c, |
33 | /* FSI LRI RLI PDI */ | |
34 | 0x2068, 0x2066, 0x2067, 0x2069 /* new in Unicode 6.3/ICU 52 */ | |
b75a7d8f A |
35 | }; |
36 | ||
37 | static const uint8_t | |
38 | testText1[]={ | |
39 | L, L, WS, L, WS, EN, L, B | |
40 | }; | |
41 | ||
42 | static const UBiDiLevel | |
43 | testLevels1[]={ | |
44 | 0, 0, 0, 0, 0, 0, 0, 0 | |
45 | }; | |
46 | ||
47 | static const uint8_t | |
48 | testVisualMap1[]={ | |
49 | 0, 1, 2, 3, 4, 5, 6, 7 | |
50 | }; | |
51 | ||
52 | static const uint8_t | |
53 | testText2[]={ | |
54 | R, AL, WS, R, AL, WS, R | |
55 | }; | |
56 | ||
57 | static const UBiDiLevel | |
58 | testLevels2[]={ | |
59 | 1, 1, 1, 1, 1, 1, 1 | |
60 | }; | |
61 | ||
62 | static const uint8_t | |
63 | testVisualMap2[]={ | |
64 | 6, 5, 4, 3, 2, 1, 0 | |
65 | }; | |
66 | ||
67 | static const uint8_t | |
68 | testText3[]={ | |
69 | L, L, WS, EN, CS, WS, EN, CS, EN, WS, L, L | |
70 | }; | |
71 | ||
72 | static const UBiDiLevel | |
73 | testLevels3[]={ | |
74 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | |
75 | }; | |
76 | ||
77 | static const uint8_t | |
78 | testVisualMap3[]={ | |
79 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 | |
80 | }; | |
81 | ||
82 | static const uint8_t | |
83 | testText4[]={ | |
84 | L, AL, AL, AL, L, AL, AL, L, WS, EN, CS, WS, EN, CS, EN, WS, L, L | |
85 | }; | |
86 | ||
87 | static const UBiDiLevel | |
88 | testLevels4[]={ | |
89 | 0, 1, 1, 1, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 | |
90 | }; | |
91 | ||
92 | static const uint8_t | |
93 | testVisualMap4[]={ | |
94 | 0, 3, 2, 1, 4, 6, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 | |
95 | }; | |
96 | ||
97 | static const uint8_t | |
98 | testText5[]={ | |
99 | AL, R, AL, WS, EN, CS, WS, EN, CS, EN, WS, R, R, WS, L, L | |
100 | }; | |
101 | ||
102 | static const UBiDiLevel | |
103 | testLevels5[]={ | |
104 | 1, 1, 1, 1, 2, 1, 1, 2, 2, 2, 1, 1, 1, 1, 2, 2 | |
105 | }; | |
106 | ||
107 | static const uint8_t | |
108 | testVisualMap5[]={ | |
109 | 15, 14, 13, 12, 11, 10, 9, 6, 7, 8, 5, 4, 3, 2, 0, 1 | |
110 | }; | |
111 | ||
112 | static const uint8_t | |
113 | testText6[]={ | |
114 | R, EN, NSM, ET | |
115 | }; | |
116 | ||
117 | static const UBiDiLevel | |
118 | testLevels6[]={ | |
119 | 1, 2, 2, 2 | |
120 | }; | |
121 | ||
122 | static const uint8_t | |
123 | testVisualMap6[]={ | |
124 | 3, 0, 1, 2 | |
125 | }; | |
126 | ||
127 | #if 0 | |
128 | static const uint8_t | |
129 | testText7[]={ | |
130 | /* empty */ | |
131 | }; | |
132 | ||
133 | static const UBiDiLevel | |
134 | testLevels7[]={ | |
135 | }; | |
136 | ||
137 | static const uint8_t | |
138 | testVisualMap7[]={ | |
139 | }; | |
140 | ||
141 | #endif | |
142 | ||
143 | static const uint8_t | |
144 | testText8[]={ | |
145 | RLE, WS, R, R, R, WS, PDF, WS, B | |
146 | }; | |
147 | ||
148 | static const UBiDiLevel | |
149 | testLevels8[]={ | |
150 | 1, 1, 1, 1, 1, 1, 1, 1, 1 | |
151 | }; | |
152 | ||
153 | static const uint8_t | |
154 | testVisualMap8[]={ | |
155 | 8, 7, 6, 5, 4, 3, 2, 1, 0 | |
156 | }; | |
157 | ||
158 | static const uint8_t | |
159 | testText9[]={ | |
57a6839d A |
160 | LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, /* 15 entries */ |
161 | LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, /* 15 entries */ | |
162 | AN, RLO, NSM, LRE, PDF, RLE, ES, EN, ON /* 9 entries */ | |
b75a7d8f A |
163 | }; |
164 | ||
165 | static const UBiDiLevel | |
166 | testLevels9[]={ | |
57a6839d A |
167 | 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, /* 15 entries */ |
168 | 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, 126, /* 15 entries */ | |
169 | 126, 125, 125, 125, 125, 125, 125, 125, 125 /* 9 entries */ | |
b75a7d8f A |
170 | }; |
171 | ||
172 | static const uint8_t | |
173 | testVisualMap9[]={ | |
57a6839d A |
174 | 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, /* 15 entries */ |
175 | 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, /* 15 entries */ | |
176 | 38, 7, 6, 5, 4, 3, 2, 1, 0 /* 9 entries */ | |
b75a7d8f A |
177 | }; |
178 | ||
179 | static const uint8_t | |
180 | testText10[]={ | |
57a6839d A |
181 | LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, /* 15 entries */ |
182 | LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, LRE, /* 15 entries */ | |
183 | LRE, BN, CS, RLO, S, PDF, EN, LRO, AN, ES /* 10 entries */ | |
b75a7d8f A |
184 | }; |
185 | ||
186 | static const UBiDiLevel | |
187 | testLevels10[]={ | |
57a6839d A |
188 | 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, /* 15 entries */ |
189 | 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, /* 15 entries */ | |
190 | 124, 124, 124, 64, 64, 124, 124, 126, 126, 124 /* 10 entries */ | |
b75a7d8f A |
191 | }; |
192 | ||
193 | static const uint8_t | |
194 | testVisualMap10[]={ | |
57a6839d A |
195 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, /* 15 entries */ |
196 | 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, /* 15 entries */ | |
197 | 30, 31, 32, 33, 34, 35, 36, 37, 38, 39 /* 10 entries */ | |
b75a7d8f A |
198 | }; |
199 | ||
200 | static const uint8_t | |
201 | testText11[]={ | |
57a6839d A |
202 | S, WS, NSM, RLE, WS, L, L, L, WS, LRO, WS, R, R, R, WS, RLO, WS, L, L, L, /* 20 entries */ |
203 | WS, LRE, WS, R, R, R, WS, PDF, WS, L, L, L, WS, PDF, WS, AL, AL, AL, WS, PDF, /* 20 entries */ | |
204 | WS, L, L, L, WS, PDF, WS, L, L, L, WS, PDF, ON, PDF, BN, BN, ON, PDF /* 18 entries */ | |
b75a7d8f A |
205 | }; |
206 | ||
207 | static const UBiDiLevel | |
208 | testLevels11[]={ | |
57a6839d A |
209 | 0, 0, 0, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, /* 20 entries */ |
210 | 3, 4, 4, 5, 5, 5, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, /* 20 entries */ | |
211 | 2, 2, 2, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 /* 18 entries */ | |
b75a7d8f A |
212 | }; |
213 | ||
214 | static const uint8_t | |
215 | testVisualMap11[]={ | |
57a6839d A |
216 | 0, 1, 2, 44, 43, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 31, 30, 29, 28, 27, /* 20 entries */ |
217 | 26, 20, 21, 24, 23, 22, 25, 19, 18, 17, 16, 15, 14, 32, 33, 34, 35, 36, 37, 38, /* 20 entries */ | |
218 | 39, 40, 41, 42, 3, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 /* 18 entries */ | |
b75a7d8f A |
219 | }; |
220 | ||
221 | static const uint8_t | |
222 | testText12[]={ | |
57a6839d A |
223 | NSM, WS, L, L, L, L, L, L, L, WS, L, L, L, L, WS, |
224 | R, R, R, R, R, WS, L, L, L, L, L, L, L, WS, WS, AL, | |
225 | AL, AL, AL, WS, EN, EN, ES, EN, EN, CS, S, EN, EN, CS, WS, | |
226 | EN, EN, WS, AL, AL, AL, AL, AL, B, L, L, L, L, L, L, | |
b75a7d8f A |
227 | L, L, WS, AN, AN, CS, AN, AN, WS |
228 | }; | |
229 | ||
230 | static const UBiDiLevel | |
231 | testLevels12[]={ | |
232 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 1, 0, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0 | |
233 | }; | |
234 | ||
235 | static const uint8_t | |
236 | testVisualMap12[]={ | |
237 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 19, 18, 17, 16, 15, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 40, 39, 38, 37, 36, 34, 35, 33, 31, 32, 30, 41, 52, 53, 51, 50, 48, 49, 47, 46, 45, 44, 43, 42, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69 | |
238 | }; | |
239 | ||
240 | static const UBiDiLevel | |
241 | testLevels13[]={ | |
242 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 1, 0, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0 | |
243 | }; | |
244 | ||
245 | static const uint8_t | |
246 | testVisualMap13[]={ | |
247 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 19, 18, 17, 16, 15, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 40, 39, 38, 37, 36, 34, 35, 33, 31, 32, 30, 41, 52, 53, 51, 50, 48, 49, 47, 46, 45, 44, 43, 42, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69 | |
248 | }; | |
249 | ||
250 | static const UBiDiLevel | |
251 | testLevels14[]={ | |
252 | 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 3, 4, 4, 3, 2, 4, 4, 3, 3, 4, 4, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 4, 4, 4, 4, 4, 2 | |
253 | }; | |
254 | ||
255 | static const uint8_t | |
256 | testVisualMap14[]={ | |
257 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 19, 18, 17, 16, 15, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 40, 39, 38, 37, 36, 34, 35, 33, 31, 32, 30, 41, 52, 53, 51, 50, 48, 49, 47, 46, 45, 44, 43, 42, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69 | |
258 | }; | |
259 | ||
260 | static const UBiDiLevel | |
261 | testLevels15[]={ | |
262 | 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 5, 5, 5, 5, 5, 5, 5, 6, 6, 5, 6, 6, 5, 5, 6, 6, 5, 5, 6, 6, 5, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 6, 5, 6, 6, 6, 6, 6, 5 | |
263 | }; | |
264 | ||
265 | static const uint8_t | |
266 | testVisualMap15[]={ | |
267 | 69, 68, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 55, 54, 53, 52, 51, 50, 49, 42, 43, 44, 45, 46, 47, 48, 41, 40, 39, 38, 37, 36, 35, 33, 34, 32, 30, 31, 29, 28, 26, 27, 25, 24, 22, 23, 21, 20, 19, 18, 17, 16, 15, 7, 8, 9, 10, 11, 12, 13, 14, 6, 1, 2, 3, 4, 5, 0 | |
268 | }; | |
269 | ||
270 | static const UBiDiLevel | |
271 | testLevels16[]={ | |
272 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 1, 2, 2, 1, 0, 2, 2, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0 | |
273 | }; | |
274 | ||
275 | static const uint8_t | |
276 | testVisualMap16[]={ | |
277 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 19, 18, 17, 16, 15, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 40, 39, 38, 37, 36, 34, 35, 33, 31, 32, 30, 41, 52, 53, 51, 50, 48, 49, 47, 46, 45, 44, 43, 42, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69 | |
278 | }; | |
279 | ||
280 | static const uint8_t | |
281 | testText13[]={ | |
282 | ON, L, RLO, CS, R, WS, AN, AN, PDF, LRE, R, L, LRO, WS, BN, ON, S, LRE, LRO, B | |
283 | }; | |
284 | ||
285 | static const UBiDiLevel | |
286 | testLevels17[]={ | |
287 | 0, 0, 1, 1, 1, 1, 1, 1, 3, 3, 3, 2, 4, 4, 4, 4, 0, 0, 0, 0 | |
288 | }; | |
289 | ||
290 | static const uint8_t | |
291 | testVisualMap17[]={ | |
292 | 0, 1, 15, 14, 13, 12, 11, 10, 4, 3, 2, 5, 6, 7, 8, 9, 16, 17, 18, 19 | |
293 | }; | |
294 | ||
295 | static const UBiDiLevel | |
296 | testLevels18[]={ | |
297 | 0, 0, 1, 1, 1, 0 | |
298 | }; | |
299 | ||
300 | static const uint8_t | |
301 | testVisualMap18[]={ | |
302 | 0, 1, 4, 3, 2, 5 | |
303 | }; | |
304 | ||
305 | static const uint8_t | |
306 | testText14[]={ | |
307 | RLO, RLO, AL, AL, WS, EN, ES, ON, WS, S, S, PDF, LRO, WS, AL, ET, RLE, ON, EN, B | |
308 | }; | |
309 | ||
310 | static const UBiDiLevel | |
311 | testLevels19[]={ | |
312 | 1 | |
313 | }; | |
314 | ||
315 | static const uint8_t | |
316 | testVisualMap19[]={ | |
317 | 0 | |
318 | }; | |
319 | ||
320 | static const uint8_t | |
321 | testText15[]={ | |
322 | R, L, CS, L | |
323 | }; | |
324 | ||
325 | static const UBiDiLevel | |
326 | testLevels20[]={ | |
327 | 2 | |
328 | }; | |
329 | ||
374ca955 A |
330 | static const uint8_t |
331 | testText16[]={ | |
332 | L, L, L, WS, L, L, L, WS, L, L, L | |
333 | }; | |
334 | ||
335 | static const UBiDiLevel | |
336 | testLevels21[]={ | |
337 | 2, 2, 2, 2, 2, 2, 2, 1 | |
338 | }; | |
339 | ||
340 | static const uint8_t | |
341 | testVisualMap20[]={ | |
342 | 1, 2, 3, 4, 5, 6, 7, 0 | |
343 | }; | |
344 | ||
345 | static const uint8_t | |
346 | testText17[]={ | |
347 | R, R, R, WS, R, R, R, WS, R, R, R | |
348 | }; | |
349 | ||
350 | static const UBiDiLevel | |
351 | testLevels22[]={ | |
352 | 1, 1, 1, 1, 1, 1, 1, 0 | |
353 | }; | |
354 | ||
355 | static const uint8_t | |
356 | testVisualMap21[]={ | |
357 | 6, 5, 4, 3, 2, 1, 0, 7 | |
358 | }; | |
359 | ||
360 | static const uint8_t | |
361 | testTextXX[]={ | |
362 | L | |
363 | }; | |
364 | ||
365 | static const UBiDiLevel | |
366 | testLevelsXX[]={ | |
367 | 2 | |
368 | }; | |
369 | ||
370 | static const uint8_t | |
371 | testVisualMapXX[]={ | |
372 | 0 | |
373 | }; | |
374 | ||
46f4442e | 375 | const BiDiTestData |
b75a7d8f A |
376 | tests[]={ |
377 | {testText1, ARRAY_LENGTH(testText1), UBIDI_DEFAULT_LTR, -1, -1, | |
378 | UBIDI_LTR, 0, | |
379 | testLevels1, testVisualMap1}, | |
380 | {testText2, ARRAY_LENGTH(testText2), UBIDI_DEFAULT_LTR, -1, -1, | |
381 | UBIDI_RTL, 1, | |
382 | testLevels2, testVisualMap2}, | |
383 | {testText3, ARRAY_LENGTH(testText3), UBIDI_DEFAULT_LTR, -1, -1, | |
384 | UBIDI_LTR, 0, | |
385 | testLevels3, testVisualMap3}, | |
386 | {testText4, ARRAY_LENGTH(testText4), UBIDI_DEFAULT_LTR, -1, -1, | |
387 | UBIDI_MIXED, 0, | |
388 | testLevels4, testVisualMap4}, | |
389 | {testText5, ARRAY_LENGTH(testText5), UBIDI_DEFAULT_LTR, -1, -1, | |
390 | UBIDI_MIXED, 1, | |
391 | testLevels5, testVisualMap5}, | |
392 | {testText6, ARRAY_LENGTH(testText6), UBIDI_DEFAULT_LTR, -1, -1, | |
393 | UBIDI_MIXED, 1, | |
394 | testLevels6, testVisualMap6}, | |
395 | {NULL, 0, UBIDI_DEFAULT_LTR, -1, -1, | |
396 | UBIDI_LTR, 0, | |
397 | NULL, NULL}, | |
398 | {testText8, ARRAY_LENGTH(testText8), UBIDI_DEFAULT_LTR, -1, -1, | |
399 | UBIDI_RTL, 1, | |
400 | testLevels8, testVisualMap8}, | |
57a6839d A |
401 | {testText9, ARRAY_LENGTH(testText9), 64, -1, -1, |
402 | UBIDI_MIXED, 64, | |
b75a7d8f | 403 | testLevels9, testVisualMap9}, |
57a6839d A |
404 | {testText10, ARRAY_LENGTH(testText10), 64, -1, -1, |
405 | UBIDI_MIXED, 64, | |
b75a7d8f A |
406 | testLevels10, testVisualMap10}, |
407 | {testText11, ARRAY_LENGTH(testText11), UBIDI_DEFAULT_LTR, -1, -1, | |
408 | UBIDI_MIXED, 0, | |
409 | testLevels11, testVisualMap11}, | |
410 | {testText12, ARRAY_LENGTH(testText12), UBIDI_DEFAULT_LTR, -1, -1, | |
411 | UBIDI_MIXED, 0, | |
412 | testLevels12, testVisualMap12}, | |
413 | {testText12, ARRAY_LENGTH(testText12), UBIDI_DEFAULT_RTL, -1, -1, | |
414 | UBIDI_MIXED, 0, | |
415 | testLevels13, testVisualMap13}, | |
416 | {testText12, ARRAY_LENGTH(testText12), 2, -1, -1, | |
417 | UBIDI_MIXED, 2, | |
418 | testLevels14, testVisualMap14}, | |
419 | {testText12, ARRAY_LENGTH(testText12), 5, -1, -1, | |
420 | UBIDI_MIXED, 5, | |
421 | testLevels15, testVisualMap15}, | |
422 | {testText12, ARRAY_LENGTH(testText12), UBIDI_DEFAULT_LTR, -1, -1, | |
423 | UBIDI_MIXED, 0, | |
424 | testLevels16, testVisualMap16}, | |
425 | {testText13, ARRAY_LENGTH(testText13), UBIDI_DEFAULT_LTR, -1, -1, | |
426 | UBIDI_MIXED, 0, | |
427 | testLevels17, testVisualMap17}, | |
428 | {testText13, ARRAY_LENGTH(testText13), UBIDI_DEFAULT_LTR, 0, 6, | |
429 | UBIDI_MIXED, 0, | |
430 | testLevels18, testVisualMap18}, | |
431 | {testText14, ARRAY_LENGTH(testText14), UBIDI_DEFAULT_LTR, 13, 14, | |
432 | UBIDI_RTL, 1, | |
433 | testLevels19, testVisualMap19}, | |
434 | {testText15, ARRAY_LENGTH(testText15), UBIDI_DEFAULT_LTR, 2, 3, | |
435 | UBIDI_LTR, 2, | |
374ca955 A |
436 | testLevels20, testVisualMap19}, |
437 | {testText16, ARRAY_LENGTH(testText16), UBIDI_RTL, 0, 8, | |
438 | UBIDI_MIXED, 1, | |
439 | testLevels21, testVisualMap20}, | |
440 | {testText17, ARRAY_LENGTH(testText17), UBIDI_LTR, 0, 8, | |
441 | UBIDI_MIXED, 0, | |
442 | testLevels22, testVisualMap21}, | |
57a6839d | 443 | {testTextXX, ARRAY_LENGTH(testTextXX), UBIDI_RTL, -1, -1, |
374ca955 | 444 | UBIDI_MIXED, 1, testLevelsXX, testVisualMapXX} |
b75a7d8f A |
445 | }; |
446 | ||
46f4442e | 447 | const int |
b75a7d8f | 448 | bidiTestCount=ARRAY_LENGTH(tests); |