2
*******************************************************************************
3
* Copyright (C) 2003-2006, International Business Machines Corporation and *
4
* others. All Rights Reserved. *
5
*******************************************************************************
7
package com.ibm.icu.dev.test.stringprep;
9
import com.ibm.icu.text.IDNA;
10
import com.ibm.icu.text.StringPrepParseException;
15
* To change the template for this generated type comment go to
16
* Window>Preferences>Java>Code Generation>Code and Comments
18
public class TestData {
19
public static final char[][] unicodeIn ={
21
0x0644, 0x064A, 0x0647, 0x0645, 0x0627, 0x0628, 0x062A, 0x0643, 0x0644,
22
0x0645, 0x0648, 0x0634, 0x0639, 0x0631, 0x0628, 0x064A, 0x061F
25
0x4ED6, 0x4EEC, 0x4E3A, 0x4EC0, 0x4E48, 0x4E0D, 0x8BF4, 0x4E2D, 0x6587,
29
0x0050, 0x0072, 0x006F, 0x010D, 0x0070, 0x0072, 0x006F, 0x0073, 0x0074,
30
0x011B, 0x006E, 0x0065, 0x006D, 0x006C, 0x0075, 0x0076, 0x00ED, 0x010D,
31
0x0065, 0x0073, 0x006B, 0x0079,
34
0x05DC, 0x05DE, 0x05D4, 0x05D4, 0x05DD, 0x05E4, 0x05E9, 0x05D5, 0x05D8,
35
0x05DC, 0x05D0, 0x05DE, 0x05D3, 0x05D1, 0x05E8, 0x05D9, 0x05DD, 0x05E2,
36
0x05D1, 0x05E8, 0x05D9, 0x05EA,
39
0x092F, 0x0939, 0x0932, 0x094B, 0x0917, 0x0939, 0x093F, 0x0928, 0x094D,
40
0x0926, 0x0940, 0x0915, 0x094D, 0x092F, 0x094B, 0x0902, 0x0928, 0x0939,
41
0x0940, 0x0902, 0x092C, 0x094B, 0x0932, 0x0938, 0x0915, 0x0924, 0x0947,
42
0x0939, 0x0948, 0x0902,
45
0x306A, 0x305C, 0x307F, 0x3093, 0x306A, 0x65E5, 0x672C, 0x8A9E, 0x3092,
46
0x8A71, 0x3057, 0x3066, 0x304F, 0x308C, 0x306A, 0x3044, 0x306E, 0x304B,
51
0xC138, 0xACC4, 0xC758, 0xBAA8, 0xB4E0, 0xC0AC, 0xB78C, 0xB4E4, 0xC774,
52
0xD55C, 0xAD6D, 0xC5B4, 0xB97C, 0xC774, 0xD574, 0xD55C, 0xB2E4, 0xBA74,
53
0xC5BC, 0xB9C8, 0xB098, 0xC88B, 0xC744, 0xAE4C,
57
0x043F, 0x043E, 0x0447, 0x0435, 0x043C, 0x0443, 0x0436, 0x0435, 0x043E,
58
0x043D, 0x0438, 0x043D, 0x0435, 0x0433, 0x043E, 0x0432, 0x043E, 0x0440,
59
0x044F, 0x0442, 0x043F, 0x043E, 0x0440, 0x0443, 0x0441, 0x0441, 0x043A,
63
0x0050, 0x006F, 0x0072, 0x0071, 0x0075, 0x00E9, 0x006E, 0x006F, 0x0070,
64
0x0075, 0x0065, 0x0064, 0x0065, 0x006E, 0x0073, 0x0069, 0x006D, 0x0070,
65
0x006C, 0x0065, 0x006D, 0x0065, 0x006E, 0x0074, 0x0065, 0x0068, 0x0061,
66
0x0062, 0x006C, 0x0061, 0x0072, 0x0065, 0x006E, 0x0045, 0x0073, 0x0070,
67
0x0061, 0x00F1, 0x006F, 0x006C,
70
0x4ED6, 0x5011, 0x7232, 0x4EC0, 0x9EBD, 0x4E0D, 0x8AAA, 0x4E2D, 0x6587,
74
0x0054, 0x1EA1, 0x0069, 0x0073, 0x0061, 0x006F, 0x0068, 0x1ECD, 0x006B,
75
0x0068, 0x00F4, 0x006E, 0x0067, 0x0074, 0x0068, 0x1EC3, 0x0063, 0x0068,
76
0x1EC9, 0x006E, 0x00F3, 0x0069, 0x0074, 0x0069, 0x1EBF, 0x006E, 0x0067,
77
0x0056, 0x0069, 0x1EC7, 0x0074,
80
0x0033, 0x5E74, 0x0042, 0x7D44, 0x91D1, 0x516B, 0x5148, 0x751F,
83
0x5B89, 0x5BA4, 0x5948, 0x7F8E, 0x6075, 0x002D, 0x0077, 0x0069, 0x0074,
84
0x0068, 0x002D, 0x0053, 0x0055, 0x0050, 0x0045, 0x0052, 0x002D, 0x004D,
85
0x004F, 0x004E, 0x004B, 0x0045, 0x0059, 0x0053,
88
0x0048, 0x0065, 0x006C, 0x006C, 0x006F, 0x002D, 0x0041, 0x006E, 0x006F,
89
0x0074, 0x0068, 0x0065, 0x0072, 0x002D, 0x0057, 0x0061, 0x0079, 0x002D,
90
0x305D, 0x308C, 0x305E, 0x308C, 0x306E, 0x5834, 0x6240,
93
0x3072, 0x3068, 0x3064, 0x5C4B, 0x6839, 0x306E, 0x4E0B, 0x0032,
96
0x004D, 0x0061, 0x006A, 0x0069, 0x3067, 0x004B, 0x006F, 0x0069, 0x3059,
97
0x308B, 0x0035, 0x79D2, 0x524D,
100
0x30D1, 0x30D5, 0x30A3, 0x30FC, 0x0064, 0x0065, 0x30EB, 0x30F3, 0x30D0,
104
0x305D, 0x306E, 0x30B9, 0x30D4, 0x30FC, 0x30C9, 0x3067,
106
// test non-BMP code points
108
0xD800, 0xDF00, 0xD800, 0xDF01, 0xD800, 0xDF02, 0xD800, 0xDF03, 0xD800, 0xDF05,
109
0xD800, 0xDF06, 0xD800, 0xDF07, 0xD800, 0xDF09, 0xD800, 0xDF0A, 0xD800, 0xDF0B,
113
0xD800, 0xDF0D, 0xD800, 0xDF0C, 0xD800, 0xDF1E, 0xD800, 0xDF0F, 0xD800, 0xDF16,
114
0xD800, 0xDF15, 0xD800, 0xDF14, 0xD800, 0xDF12, 0xD800, 0xDF10, 0xD800, 0xDF20,
120
0x03b5, 0x03bb, 0x03bb, 0x03b7, 0x03bd, 0x03b9, 0x03ba, 0x03ac
124
0x0062, 0x006f, 0x006e, 0x0121, 0x0075, 0x0073, 0x0061, 0x0127,
129
0x043f, 0x043e, 0x0447, 0x0435, 0x043c, 0x0443, 0x0436, 0x0435,
130
0x043e, 0x043d, 0x0438, 0x043d, 0x0435, 0x0433, 0x043e, 0x0432,
131
0x043e, 0x0440, 0x044f, 0x0442, 0x043f, 0x043e, 0x0440, 0x0443,
132
0x0441, 0x0441, 0x043a, 0x0438
137
public static final String[] asciiIn = {
138
"xn--egbpdaj6bu4bxfgehfvwxn",
139
"xn--ihqwcrb4cv8a8dqg056pqjye",
140
"xn--Proprostnemluvesky-uyb24dma41a",
141
"xn--4dbcagdahymbxekheh6e0a7fei0b",
142
"xn--i1baa7eci9glrd9b2ae1bj0hfcgg6iyaf8o0a1dig0cd",
143
"xn--n8jok5ay5dzabd5bym9f0cm5685rrjetr6pdxa",
144
/* "xn--989aomsvi5e83db1d2a355cv1e0vak1dwrv93d5xbh15a0dt30a5jpsd879ccm6fea98c",*/
145
"xn--b1abfaaepdrnnbgefbaDotcwatmq2g4l",
146
"xn--PorqunopuedensimplementehablarenEspaol-fmd56a",
147
"xn--ihqwctvzc91f659drss3x8bo0yb",
148
"xn--TisaohkhngthchnitingVit-kjcr8268qyxafd2f1b9g",
149
"xn--3B-ww4c5e180e575a65lsy2b",
150
"xn---with-SUPER-MONKEYS-pc58ag80a8qai00g7n9n",
151
"xn--Hello-Another-Way--fc4qua05auwb3674vfr0b",
152
"xn--2-u9tlzr9756bt3uc0v",
153
"xn--MajiKoi5-783gue6qz075azm5e",
154
"xn--de-jg4avhby1noc0d",
155
"xn--d9juau41awczczp",
157
"XN--db8CBHEJLGH4E0AL",
158
"xn--hxargifdar", // Greek
159
"xn--bonusaa-5bb1da", // Maltese
160
"xn--b1abfaaepdrnnbgefbadotcwatmq2g4l", // Russian (Cyrillic)
163
public static final String[] domainNames = {
164
"slip129-37-118-146.nc.us.ibm.net",
165
"saratoga.pe.utexas.edu",
166
"dial-120-45.ots.utexas.edu",
167
"woo-085.dorms.waller.net",
168
"hd30-049.hil.compuserve.com",
169
"pem203-31.pe.ttu.edu",
170
"56K-227.MaxTNT3.pdq.net",
171
"dial-36-2.ots.utexas.edu",
172
"slip129-37-23-152.ga.us.ibm.net",
173
"ts45ip119.cadvision.com",
174
"sdn-ts-004txaustP05.dialsprint.net",
175
"bar-tnt1s66.erols.com",
176
"101.st-louis-15.mo.dial-access.att.net",
178
"dial-13-2.ots.utexas.edu",
179
"net-redynet29.datamarkets.com.ar",
180
"ccs-shiva28.reacciun.net.ve",
181
"7.houston-11.tx.dial-access.att.net",
182
"ingw129-37-120-26.mo.us.ibm.net",
183
"dialup6.austintx.com",
185
"slip129-37-119-194.nc.us.ibm.net",
186
"cs7.dillons.co.uk.203.119.193.in-addr.arpa",
187
"swprd1.innovplace.saskatoon.sk.ca",
188
"bikini.bologna.maraut.it",
189
"node91.subnet159-198-79.baxter.com",
190
"cust19.max5.new-york.ny.ms.uu.net",
191
"balexander.slip.andrew.cmu.edu",
192
"pool029.max2.denver.co.dynip.alter.net",
193
"cust49.max9.new-york.ny.ms.uu.net",
194
"s61.abq-dialin2.hollyberry.com",
198
public static final String[] domainNames1Uni = {
199
"\u0917\u0928\u0947\u0936.sanjose.ibm.com",
201
//"www.\u00E0\u00B3\u00AF.com",
202
"www.\u00C2\u00A4.com",
203
"www.\u00C2\u00A3.com",
204
// "\\u0025", //'%' (0x0025) produces U_IDNA_STD3_ASCII_RULES_ERROR
205
// "\\u005C\\u005C", //'\' (0x005C) produces U_IDNA_STD3_ASCII_RULES_ERROR
211
// These yeild U_IDNA_PROHIBITED_ERROR
212
//"\\u00CF\\u0082.com",
213
//"\\u00CE\\u00B2\\u00C3\\u009Fss.com",
214
//"\\u00E2\\u0098\\u00BA.com",
217
public static final String[] domainNamesToASCIIOut = {
218
"xn--31b8a2bwd.sanjose.ibm.com",
220
//"www.xn--3 -iia80t.com",
230
"xn--14-ria7423a.com"
234
public static final String[] domainNamesToUnicodeOut = {
235
"\u0917\u0928\u0947\u0936.sanjose.ibm.com",
237
//"www.\u00E0\u0033\u0020\u0304.com",
238
"www.\u00E2\u00A4.com",
239
"www.\u00E2\u00A3.com",
247
"\u00E3\u0031\u2044\u0034.com"
252
public static class ErrorCase{
254
public char[] unicode;
256
public Exception expected;
257
public boolean useSTD3ASCIIRules;
258
public boolean testToUnicode;
259
public boolean testLabel;
260
ErrorCase(char[] uniIn, String asciiIn, Exception ex,
261
boolean std3, boolean testToUni, boolean testlabel){
265
useSTD3ASCIIRules = std3;
266
testToUnicode = testToUni;
267
testLabel = testlabel;
271
public static final ErrorCase[] errorCases = {
274
new ErrorCase( new char[]{
275
0x0077, 0x0077, 0x0077, 0x002e, /* www. */
276
0xC138, 0xACC4, 0xC758, 0xBAA8, 0xB4E0, 0xC0AC, 0xB78C, 0xB4E4, 0xC774,
277
0x070F,/*prohibited*/
278
0xD55C, 0xAD6D, 0xC5B4, 0xB97C, 0xC774, 0xD574, 0xD55C, 0xB2E4, 0xBA74,
279
0x002e, 0x0063, 0x006f, 0x006d, /* com. */
282
"www.xn--8mb5595fsoa28orucya378bqre2tcwop06c5qbw82a1rffmae0361dea96b.com",
283
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR),
286
new ErrorCase( new char[]{
287
0x0077, 0x0077, 0x0077, 0x002e, /* www. */
288
0xC138, 0xACC4, 0xC758, 0xBAA8, 0xB4E0, 0xC0AC, 0xB78C, 0xB4E4, 0xC774,
289
0x0221, 0x0234/*Unassigned code points*/,
290
0x002e, 0x0063, 0x006f, 0x006d, /* com. */
293
"www.xn--6la2bz548fj1gua391bf1gb1n59ab29a7ia.com",
295
new StringPrepParseException("",StringPrepParseException.UNASSIGNED_ERROR),
298
new ErrorCase( new char[]{
299
0x0077, 0x0077, 0x0077, 0x002e, /* www. */
300
0xC138, 0xACC4, 0xC758, 0xBAA8, 0xB4E0, 0xC0AC, 0xB78C, 0xB4E4, 0xC774,
301
0x0644, 0x064A, 0x0647,/*Arabic code points. Cannot mix RTL with LTR*/
302
0xD55C, 0xAD6D, 0xC5B4, 0xB97C, 0xC774, 0xD574, 0xD55C, 0xB2E4, 0xBA74,
303
0x002e, 0x0063, 0x006f, 0x006d, /* com. */
306
"www.xn--ghBGI4851OiyA33VqrD6Az86C4qF83CtRv93D5xBk15AzfG0nAgA0578DeA71C.com",
307
new StringPrepParseException("",StringPrepParseException.CHECK_BIDI_ERROR),
310
new ErrorCase( new char[]{
311
0x0077, 0x0077, 0x0077, 0x002e, /* www. */
312
/* labels cannot begin with an HYPHEN */
313
0x002D, 0xACC4, 0xC758, 0xBAA8, 0xB4E0, 0xC0AC, 0xB78C, 0xB4E4, 0xC774,
315
0xD55C, 0xAD6D, 0xC5B4, 0xB97C, 0xC774, 0xD574, 0xD55C, 0xB2E4, 0xBA74,
316
0x002e, 0x0063, 0x006f, 0x006d, /* com. */
320
"www.xn----b95Ew8SqA315Ao5FbuMlnNmhA.com",
321
new StringPrepParseException("",StringPrepParseException.STD3_ASCII_RULES_ERROR),
324
new ErrorCase( new char[]{
325
/* correct ACE-prefix followed by unicode */
326
0x0077, 0x0077, 0x0077, 0x002e, /* www. */
327
0x0078, 0x006e, 0x002d,0x002d, /* ACE Prefix */
328
0x002D, 0xACC4, 0xC758, 0xBAA8, 0xB4E0, 0xC0AC, 0xB78C, 0xB4E4, 0xC774,
330
0xD55C, 0xAD6D, 0xC5B4, 0xB97C, 0xC774, 0xD574, 0xD55C, 0xB2E4, 0xBA74,
331
0x002e, 0x0063, 0x006f, 0x006d, /* com. */
335
/* wrong ACE-prefix followed by valid ACE-encoded ASCII */
336
"www.XY-----b91I0V65S96C2A355Cw1E5yCeQr19CsnP1mFfmAE0361DeA96B.com",
337
new StringPrepParseException("",StringPrepParseException.ACE_PREFIX_ERROR),
340
/* cannot verify U_IDNA_VERIFICATION_ERROR */
342
new ErrorCase( new char[]{
343
0x0077, 0x0077, 0x0077, 0x002e, /* www. */
344
0xC138, 0xACC4, 0xC758, 0xBAA8, 0xB4E0, 0xC0AC, 0xB78C, 0xB4E4, 0xC774,
345
0xD55C, 0xAD6D, 0xC5B4, 0xB97C, 0xC774, 0xD574, 0xD55C, 0xB2E4, 0xBA74,
346
0xC5BC, 0xB9C8, 0xB098, 0xC88B, 0xC744, 0xAE4C,
347
0x002e, 0x0063, 0x006f, 0x006d, /* com. */
350
"www.xn--989AoMsVi5E83Db1D2A355Cv1E0vAk1DwRv93D5xBh15A0Dt30A5JpSD879Ccm6FeA98C.com",
351
new StringPrepParseException("",StringPrepParseException.LABEL_TOO_LONG_ERROR),
354
new ErrorCase( new char[]{
355
0x0077, 0x0077, 0x0077, 0x002e, /* www. */
356
0x0030, 0x0644, 0x064A, 0x0647, 0x0031, /* Arabic code points squashed between EN codepoints */
357
0x002e, 0x0063, 0x006f, 0x006d, /* com. */
360
"www.xn--01-tvdmo.com",
361
new StringPrepParseException("",StringPrepParseException.CHECK_BIDI_ERROR),
365
new ErrorCase( new char[]{
366
0x0077, 0x0077, 0x0077, 0x002e, // www.
367
0x206C, 0x0644, 0x064A, 0x0647, 0x206D, // Arabic code points squashed between BN codepoints
368
0x002e, 0x0063, 0x006f, 0x006d, // com.
371
"www.XN--ghbgi278xia.com",
372
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR),
375
new ErrorCase( new char[] {
376
0x0077, 0x0077, 0x0077, 0x002e, // www.
377
0x002D, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, // HYPHEN at the start of label
378
0x002e, 0x0063, 0x006f, 0x006d, // com.
382
new StringPrepParseException("",StringPrepParseException.STD3_ASCII_RULES_ERROR),
385
new ErrorCase( new char[] {
386
0x0077, 0x0077, 0x0077, 0x002e, // www.
387
0x0041, 0x0042, 0x0043, 0x0044, 0x0045,0x002D, // HYPHEN at the end of the label
388
0x002e, 0x0063, 0x006f, 0x006d, // com.
392
new StringPrepParseException("",StringPrepParseException.STD3_ASCII_RULES_ERROR),
395
new ErrorCase( new char[]{
396
0x0077, 0x0077, 0x0077, 0x002e, // www.
397
0x0041, 0x0042, 0x0043, 0x0044, 0x0045,0x0040, // Containing non LDH code point
398
0x002e, 0x0063, 0x006f, 0x006d, // com.
402
new StringPrepParseException("",StringPrepParseException.STD3_ASCII_RULES_ERROR),
405
new ErrorCase( new char[]{
406
0x0077, 0x0077, 0x0077, 0x002e, // www.
408
0x002e, 0x0063, 0x006f, 0x006d, // com.
411
new StringPrepParseException("",StringPrepParseException.ZERO_LENGTH_LABEL),
417
public static final class ConformanceTestCase{
424
private static byte[] getBytes(String in){
428
byte[] bytes = new byte[in.length()];
429
for(int i=0; i < in.length();i++){
430
bytes[i] = (byte)in.charAt(i);
434
ConformanceTestCase(String comt, String in, String out,
435
String prof, int flg, Exception ex)
440
byte[] bytes = getBytes(in);
441
input = new String(bytes,"UTF-8");
442
bytes = getBytes(out);
443
output = (bytes==null)? null : new String(bytes,"UTF-8");
447
}catch (Exception e){
449
throw new RuntimeException();
454
public static final ConformanceTestCase[] conformanceTestCases =
457
new ConformanceTestCase(
458
"Case folding ASCII U+0043 U+0041 U+0046 U+0045",
459
"\u0043\u0041\u0046\u0045", "\u0063\u0061\u0066\u0065",
460
"Nameprep", IDNA.DEFAULT,
464
new ConformanceTestCase(
465
"Case folding 8bit U+00DF (german sharp s)",
466
"\u00C3\u009F", "\u0073\u0073",
467
"Nameprep", IDNA.DEFAULT,
470
new ConformanceTestCase(
471
"Non-ASCII multibyte space character U+1680",
472
"\u00E1\u009A\u0080", null,
473
"Nameprep", IDNA.DEFAULT,
474
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
476
new ConformanceTestCase(
477
"Non-ASCII 8bit control character U+0085",
478
"\u00C2\u0085", null,
479
"Nameprep", IDNA.DEFAULT,
480
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
482
new ConformanceTestCase(
483
"Non-ASCII multibyte control character U+180E",
484
"\u00E1\u00A0\u008E", null,
485
"Nameprep", IDNA.DEFAULT,
486
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
488
new ConformanceTestCase(
489
"Non-ASCII control character U+1D175",
490
"\u00F0\u009D\u0085\u00B5", null,
491
"Nameprep", IDNA.DEFAULT,
492
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
494
new ConformanceTestCase(
495
"Plane 0 private use character U+F123",
496
"\u00EF\u0084\u00A3", null,
497
"Nameprep", IDNA.DEFAULT,
498
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
500
new ConformanceTestCase(
501
"Plane 15 private use character U+F1234",
502
"\u00F3\u00B1\u0088\u00B4", null,
503
"Nameprep", IDNA.DEFAULT,
504
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
506
new ConformanceTestCase(
507
"Plane 16 private use character U+10F234",
508
"\u00F4\u008F\u0088\u00B4", null,
509
"Nameprep", IDNA.DEFAULT,
510
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
512
new ConformanceTestCase(
513
"Non-character code point U+8FFFE",
514
"\u00F2\u008F\u00BF\u00BE", null,
515
"Nameprep", IDNA.DEFAULT,
516
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
518
new ConformanceTestCase(
519
"Non-character code point U+10FFFF",
520
"\u00F4\u008F\u00BF\u00BF", null,
521
"Nameprep", IDNA.DEFAULT,
522
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
526
"Surrogate code U+DF42",
527
"\u00ED\u00BD\u0082", null, "Nameprep", InternationalizedDomainNames.DEFAULT,
528
U_IDNA_PROHIBITED_ERROR
531
new ConformanceTestCase(
532
"Non-plain text character U+FFFD",
533
"\u00EF\u00BF\u00BD", null,
534
"Nameprep", IDNA.DEFAULT,
535
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
537
new ConformanceTestCase(
538
"Ideographic description character U+2FF5",
539
"\u00E2\u00BF\u00B5", null,
540
"Nameprep", IDNA.DEFAULT,
541
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
543
new ConformanceTestCase(
544
"Display property character U+0341",
545
"\u00CD\u0081", "\u00CC\u0081",
546
"Nameprep", IDNA.DEFAULT,
551
new ConformanceTestCase(
552
"Left-to-right mark U+200E",
553
"\u00E2\u0080\u008E", "\u00CC\u0081",
554
"Nameprep", IDNA.DEFAULT,
555
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
557
new ConformanceTestCase(
560
"\u00E2\u0080\u00AA", "\u00CC\u0081",
561
"Nameprep", IDNA.DEFAULT,
562
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
564
new ConformanceTestCase(
565
"Language tagging character U+E0001",
566
"\u00F3\u00A0\u0080\u0081", "\u00CC\u0081",
567
"Nameprep", IDNA.DEFAULT,
568
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
570
new ConformanceTestCase(
571
"Language tagging character U+E0042",
572
"\u00F3\u00A0\u0081\u0082", null,
573
"Nameprep", IDNA.DEFAULT,
574
new StringPrepParseException("",StringPrepParseException.PROHIBITED_ERROR)
576
new ConformanceTestCase(
577
"Bidi: RandALCat character U+05BE and LCat characters",
578
"\u0066\u006F\u006F\u00D6\u00BE\u0062\u0061\u0072", null,
579
"Nameprep", IDNA.DEFAULT,
580
new StringPrepParseException("",StringPrepParseException.CHECK_BIDI_ERROR)
582
new ConformanceTestCase(
583
"Bidi: RandALCat character U+FD50 and LCat characters",
584
"\u0066\u006F\u006F\u00EF\u00B5\u0090\u0062\u0061\u0072", null,
585
"Nameprep",IDNA.DEFAULT ,
586
new StringPrepParseException("",StringPrepParseException.CHECK_BIDI_ERROR)
588
new ConformanceTestCase(
589
"Bidi: RandALCat character U+FB38 and LCat characters",
590
"\u0066\u006F\u006F\u00EF\u00B9\u00B6\u0062\u0061\u0072", "\u0066\u006F\u006F \u00d9\u008e\u0062\u0061\u0072",
591
"Nameprep", IDNA.DEFAULT,
594
new ConformanceTestCase(
595
"Bidi: RandALCat without trailing RandALCat U+0627 U+0031",
596
"\u00D8\u00A7\u0031", null,
597
"Nameprep", IDNA.DEFAULT,
598
new StringPrepParseException("",StringPrepParseException.CHECK_BIDI_ERROR)
600
new ConformanceTestCase(
601
"Bidi: RandALCat character U+0627 U+0031 U+0628",
602
"\u00D8\u00A7\u0031\u00D8\u00A8", "\u00D8\u00A7\u0031\u00D8\u00A8",
603
"Nameprep", IDNA.DEFAULT,
606
new ConformanceTestCase(
607
"Unassigned code point U+E0002",
608
"\u00F3\u00A0\u0080\u0082", null,
609
"Nameprep", IDNA.DEFAULT,
610
new StringPrepParseException("",StringPrepParseException.UNASSIGNED_ERROR)
615
"Larger test (shrinking)",
616
"X\u00C2\u00AD\u00C3\u00DF\u00C4\u00B0\u00E2\u0084\u00A1\u006a\u00cc\u008c\u00c2\u00a0\u00c2"
617
"\u00aa\u00ce\u00b0\u00e2\u0080\u0080", "xssi\u00cc\u0087""tel\u00c7\u00b0 a\u00ce\u00b0 ",
619
InternationalizedDomainNames.DEFAULT, U_ZERO_ERROR
623
"Larger test (expanding)",
624
"X\u00C3\u00DF\u00e3\u008c\u0096\u00C4\u00B0\u00E2\u0084\u00A1\u00E2\u0092\u009F\u00E3\u008c\u0080",
625
"xss\u00e3\u0082\u00ad\u00e3\u0083\u00ad\u00e3\u0083\u00a1\u00e3\u0083\u00bc\u00e3\u0083\u0088"
626
"\u00e3\u0083\u00ab""i\u00cc\u0087""tel\u0028""d\u0029\u00e3\u0082\u00a2\u00e3\u0083\u0091"
627
"\u00e3\u0083\u00bc\u00e3\u0083\u0088"
629
InternationalizedDomainNames.DEFAULT, U_ZERO_ERROR