authorgravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-01-22 02:56:34 -08:00
committergravatar for hello@nektro.netMeghan Denny <hello@nektro.net> 2026-01-22 02:56:34 -08:00
loga61663d2e573c2295e180fa1333accbd7256acd9
tree3c6b944d011cabce55ec2b7206e1d0d1b3399ccf
parentf7a805254e559c21b3fc11f78b46221c0a4b42ab

remove X4_2-only tests for now


3 files changed, 2 insertions(+), 55 deletions(-)

generate.ts+1-1
......@@ -242,7 +242,7 @@ fn toAsciiFail(
242242 if (toAsciiNStatus === "[]") w.write(`test { try toAsciiPass("${E(source)}", "${E(toAsciiN)}", false); }\n`);
243243 if (toAsciiTStatus === "[]") w.write(`test { try toAsciiPass("${E(source)}", "${E(toAsciiT)}", true); }\n`);
244244
245 if (toUnicodeStatus !== "[]") w.write(`test { try toUnicodeFail("${E(source)}"); } // ${toUnicodeStatus}\n`);
245 if (toUnicodeStatus !== "[]" && toUnicodeStatus !== "[X4_2]") w.write(`test { try toUnicodeFail("${E(source)}"); } // ${toUnicodeStatus}\n`);
246246 if (toAsciiNStatus !== "[]") w.write(`test { try toAsciiFail("${E(source)}", false); } // ${toAsciiNStatus}\n`);
247247 if (toAsciiTStatus !== "[]") w.write(`test { try toAsciiFail("${E(source)}", true); } // ${toAsciiTStatus}\n`);
248248 }
idna.zig+1-4
......@@ -41,6 +41,7 @@ pub fn ToASCII(
4141
4242 if (VerifyDnsLength) {
4343 // 1. The length of the domain name, excluding the root label and its dot, is from 1 to 253.
44 if (map.list.items.len < 1) return error.IDNAFailure;
4445 if (map.list.items.len > 253) return error.IDNAFailure;
4546 // 2. The length of each label is from 1 to 63.
4647 for (map.lengths.items, 0..) |l, n| {
......@@ -176,10 +177,6 @@ fn Processing(
176177 try Validity_Criteria(label, CheckHyphens, Transitional_Processing, UseSTD3ASCIIRules, CheckJoiners, CheckBidi and domain_is_bidi);
177178 }
178179 }
179
180 // X4_2
181 if (std.mem.indexOf(u8, map.list.items, "..") != null) return error.IDNAFailure;
182 if (std.mem.startsWith(u8, map.list.items, ".")) return error.IDNAFailure;
183180}
184181
185182//
testv2.zig-50
......@@ -323,13 +323,10 @@ test { try toAsciiPass("\xe1\xa7\x9a", "xn--pkf", true); }
323323test { try toUnicodePass("xn--pkf", "\xe1\xa7\x9a"); }
324324test { try toAsciiPass("xn--pkf", "xn--pkf", false); }
325325test { try toAsciiPass("xn--pkf", "xn--pkf", true); }
326test { try toUnicodeFail("\"\""); } // [X4_2]
327326test { try toAsciiFail("\"\"", false); } // [A4_1, A4_2]
328327test { try toAsciiFail("\"\"", true); } // [A4_1, A4_2]
329test { try toUnicodeFail("\xe3\x80\x82"); } // [X4_2]
330328test { try toAsciiFail("\xe3\x80\x82", false); } // [A4_1, A4_2]
331329test { try toAsciiFail("\xe3\x80\x82", true); } // [A4_1, A4_2]
332test { try toUnicodeFail("."); } // [X4_2]
333330test { try toAsciiFail(".", false); } // [A4_1, A4_2]
334331test { try toAsciiFail(".", true); } // [A4_1, A4_2]
335332test { try toUnicodePass("\xea\xad\xa0", "\xea\xad\xa0"); }
......@@ -941,7 +938,6 @@ test { try toAsciiFail("A.b..-Q--A\xcc\x88-.E", true); } // [V2, V3, A4_2]
941938test { try toUnicodeFail("a.b..xn---q----jra.e"); } // [V2, V3, X4_2]
942939test { try toAsciiFail("a.b..xn---q----jra.e", false); } // [V2, V3, A4_2]
943940test { try toAsciiFail("a.b..xn---q----jra.e", true); } // [V2, V3, A4_2]
944test { try toUnicodeFail("a..c"); } // [X4_2]
945941test { try toAsciiFail("a..c", false); } // [A4_2]
946942test { try toAsciiFail("a..c", true); } // [A4_2]
947943test { try toUnicodeFail("a.-b."); } // [V3]
......@@ -959,19 +955,14 @@ test { try toAsciiFail("a.bc--de.f", true); } // [V2]
959955test { try toUnicodeFail("xn--xn---epa"); } // [V2, V4]
960956test { try toAsciiFail("xn--xn---epa", false); } // [V2, V4]
961957test { try toAsciiFail("xn--xn---epa", true); } // [V2, V4]
962test { try toUnicodeFail("\xc3\xa4.\xc2\xad.c"); } // [X4_2]
963958test { try toAsciiFail("\xc3\xa4.\xc2\xad.c", false); } // [A4_2]
964959test { try toAsciiFail("\xc3\xa4.\xc2\xad.c", true); } // [A4_2]
965test { try toUnicodeFail("a\xcc\x88.\xc2\xad.c"); } // [X4_2]
966960test { try toAsciiFail("a\xcc\x88.\xc2\xad.c", false); } // [A4_2]
967961test { try toAsciiFail("a\xcc\x88.\xc2\xad.c", true); } // [A4_2]
968test { try toUnicodeFail("A\xcc\x88.\xc2\xad.C"); } // [X4_2]
969962test { try toAsciiFail("A\xcc\x88.\xc2\xad.C", false); } // [A4_2]
970963test { try toAsciiFail("A\xcc\x88.\xc2\xad.C", true); } // [A4_2]
971test { try toUnicodeFail("\xc3\x84.\xc2\xad.C"); } // [X4_2]
972964test { try toAsciiFail("\xc3\x84.\xc2\xad.C", false); } // [A4_2]
973965test { try toAsciiFail("\xc3\x84.\xc2\xad.C", true); } // [A4_2]
974test { try toUnicodeFail("xn--4ca..c"); } // [X4_2]
975966test { try toAsciiFail("xn--4ca..c", false); } // [A4_2]
976967test { try toAsciiFail("xn--4ca..c", true); } // [A4_2]
977968test { try toUnicodeFail("\xc3\xa4.-b."); } // [V3]
......@@ -1316,19 +1307,15 @@ test { try toAsciiPass("\xd9\x84", "xn--ghb", true); }
13161307test { try toUnicodeFail("xn--ghb413k"); } // [B3, C1]
13171308test { try toAsciiFail("xn--ghb413k", false); } // [B3, C1]
13181309test { try toAsciiFail("xn--ghb413k", true); } // [B3, C1]
1319test { try toUnicodeFail("a\xe3\x80\x82\xe3\x80\x82b"); } // [X4_2]
13201310test { try toAsciiFail("a\xe3\x80\x82\xe3\x80\x82b", false); } // [A4_2]
13211311test { try toAsciiFail("a\xe3\x80\x82\xe3\x80\x82b", true); } // [A4_2]
1322test { try toUnicodeFail("A\xe3\x80\x82\xe3\x80\x82B"); } // [X4_2]
13231312test { try toAsciiFail("A\xe3\x80\x82\xe3\x80\x82B", false); } // [A4_2]
13241313test { try toAsciiFail("A\xe3\x80\x82\xe3\x80\x82B", true); } // [A4_2]
1325test { try toUnicodeFail("a..b"); } // [X4_2]
13261314test { try toAsciiFail("a..b", false); } // [A4_2]
13271315test { try toAsciiFail("a..b", true); } // [A4_2]
13281316test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xe3\x80\x82\xda\xb9\xe2\x80\x8c"); } // [B1, B3, C1, C2, X4_2]
13291317test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xe3\x80\x82\xda\xb9\xe2\x80\x8c", false); } // [B1, B3, C1, C2, A4_2]
13301318test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xe3\x80\x82\xda\xb9\xe2\x80\x8c", true); } // [A4_2]
1331test { try toUnicodeFail("..xn--skb"); } // [X4_2]
13321319test { try toAsciiFail("..xn--skb", false); } // [A4_2]
13331320test { try toAsciiFail("..xn--skb", true); } // [A4_2]
13341321test { try toUnicodeFail("xn--1ug..xn--skb080k"); } // [B1, B3, C1, C2, X4_2]
......@@ -4559,7 +4546,6 @@ test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80
45594546test { try toUnicodeFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\x98"); } // [B6, C2, X4_2]
45604547test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\x98", false); } // [B6, C2, A4_2]
45614548test { try toAsciiFail("\xe1\xa2\x87\xe2\x80\x8d\xea\xa3\x84\xe3\x80\x82\xe3\x80\x82\xf0\x9e\xa4\x98", true); } // [A4_2]
4562test { try toUnicodeFail("xn--09e4694e..xn--ye6h"); } // [X4_2]
45634549test { try toAsciiFail("xn--09e4694e..xn--ye6h", false); } // [A4_2]
45644550test { try toAsciiFail("xn--09e4694e..xn--ye6h", true); } // [A4_2]
45654551test { try toUnicodeFail("xn--09e669a6x8j..xn--ye6h"); } // [B6, C2, X4_2]
......@@ -5543,7 +5529,6 @@ test { try toAsciiFail("\xe2\x80\x8c.\xe2\x89\xaf", true); } // [A4_2]
55435529test { try toUnicodeFail("\xe2\x80\x8c.>\xcc\xb8"); } // [C1]
55445530test { try toAsciiFail("\xe2\x80\x8c.>\xcc\xb8", false); } // [C1]
55455531test { try toAsciiFail("\xe2\x80\x8c.>\xcc\xb8", true); } // [A4_2]
5546test { try toUnicodeFail(".xn--hdh"); } // [X4_2]
55475532test { try toAsciiFail(".xn--hdh", false); } // [A4_2]
55485533test { try toAsciiFail(".xn--hdh", true); } // [A4_2]
55495534test { try toUnicodeFail("xn--0ug.xn--hdh"); } // [C1]
......@@ -5957,34 +5942,24 @@ test { try toAsciiFail("\xe2\x89\xaf\xe2\x92\x88\xe3\x80\x82\xc3\x9f", true); }
59575942test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82\xc3\x9f"); } // [V7]
59585943test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82\xc3\x9f", false); } // [V7]
59595944test { try toAsciiFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82\xc3\x9f", true); } // [V7]
5960test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82\xc3\x9f"); } // [X4_2]
59615945test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82\xc3\x9f", false); } // [A4_2]
59625946test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82\xc3\x9f", true); } // [A4_2]
5963test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82\xc3\x9f"); } // [X4_2]
59645947test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82\xc3\x9f", false); } // [A4_2]
59655948test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82\xc3\x9f", true); } // [A4_2]
5966test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82SS"); } // [X4_2]
59675949test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82SS", false); } // [A4_2]
59685950test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82SS", true); } // [A4_2]
5969test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82SS"); } // [X4_2]
59705951test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82SS", false); } // [A4_2]
59715952test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82SS", true); } // [A4_2]
5972test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82ss"); } // [X4_2]
59735953test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82ss", false); } // [A4_2]
59745954test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82ss", true); } // [A4_2]
5975test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82ss"); } // [X4_2]
59765955test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82ss", false); } // [A4_2]
59775956test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82ss", true); } // [A4_2]
5978test { try toUnicodeFail(">\xcc\xb81.\xe3\x80\x82Ss"); } // [X4_2]
59795957test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82Ss", false); } // [A4_2]
59805958test { try toAsciiFail(">\xcc\xb81.\xe3\x80\x82Ss", true); } // [A4_2]
5981test { try toUnicodeFail("\xe2\x89\xaf1.\xe3\x80\x82Ss"); } // [X4_2]
59825959test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82Ss", false); } // [A4_2]
59835960test { try toAsciiFail("\xe2\x89\xaf1.\xe3\x80\x82Ss", true); } // [A4_2]
5984test { try toUnicodeFail("xn--1-ogo..ss"); } // [X4_2]
59855961test { try toAsciiFail("xn--1-ogo..ss", false); } // [A4_2]
59865962test { try toAsciiFail("xn--1-ogo..ss", true); } // [A4_2]
5987test { try toUnicodeFail("xn--1-ogo..xn--zca"); } // [X4_2]
59885963test { try toAsciiFail("xn--1-ogo..xn--zca", false); } // [A4_2]
59895964test { try toAsciiFail("xn--1-ogo..xn--zca", true); } // [A4_2]
59905965test { try toUnicodeFail(">\xcc\xb8\xe2\x92\x88\xe3\x80\x82SS"); } // [V7]
......@@ -6047,7 +6022,6 @@ test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe2\x89\xa0", true); } // [A4_2
60476022test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82=\xcc\xb8"); } // [C1]
60486023test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82=\xcc\xb8", false); } // [C1]
60496024test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82=\xcc\xb8", true); } // [A4_2]
6050test { try toUnicodeFail(".xn--1ch"); } // [X4_2]
60516025test { try toAsciiFail(".xn--1ch", false); } // [A4_2]
60526026test { try toAsciiFail(".xn--1ch", true); } // [A4_2]
60536027test { try toUnicodeFail("xn--0ug.xn--1ch"); } // [C1]
......@@ -6827,10 +6801,8 @@ test { try toAsciiFail("xn--y86c.xn----73a596nuh9t", true); } // [B1, B5, B6, V7
68276801test { try toUnicodeFail("\xef\xb8\x85\xef\xb8\x92\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0"); } // [V7]
68286802test { try toAsciiFail("\xef\xb8\x85\xef\xb8\x92\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", false); } // [V7]
68296803test { try toAsciiFail("\xef\xb8\x85\xef\xb8\x92\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", true); } // [V7]
6830test { try toUnicodeFail("\xef\xb8\x85\xe3\x80\x82\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0"); } // [X4_2]
68316804test { try toAsciiFail("\xef\xb8\x85\xe3\x80\x82\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", false); } // [A4_2]
68326805test { try toAsciiFail("\xef\xb8\x85\xe3\x80\x82\xe3\x80\x82\xf0\xa6\x80\xbe\xe1\xb3\xa0", true); } // [A4_2]
6833test { try toUnicodeFail("..xn--t6f5138v"); } // [X4_2]
68346806test { try toAsciiFail("..xn--t6f5138v", false); } // [A4_2]
68356807test { try toAsciiFail("..xn--t6f5138v", true); } // [A4_2]
68366808test { try toUnicodeFail("xn--y86c.xn--t6f5138v"); } // [V7]
......@@ -8642,10 +8614,8 @@ test { try toAsciiFail("xn--6fb.xn--gmb469jjf1h", true); } // [C1, V6]
86428614test { try toUnicodeFail("\xe1\xa1\x8c\xef\xbc\x8e\xef\xb8\x92\xe1\xa2\x91"); } // [V7]
86438615test { try toAsciiFail("\xe1\xa1\x8c\xef\xbc\x8e\xef\xb8\x92\xe1\xa2\x91", false); } // [V7]
86448616test { try toAsciiFail("\xe1\xa1\x8c\xef\xbc\x8e\xef\xb8\x92\xe1\xa2\x91", true); } // [V7]
8645test { try toUnicodeFail("\xe1\xa1\x8c.\xe3\x80\x82\xe1\xa2\x91"); } // [X4_2]
86468617test { try toAsciiFail("\xe1\xa1\x8c.\xe3\x80\x82\xe1\xa2\x91", false); } // [A4_2]
86478618test { try toAsciiFail("\xe1\xa1\x8c.\xe3\x80\x82\xe1\xa2\x91", true); } // [A4_2]
8648test { try toUnicodeFail("xn--c8e..xn--bbf"); } // [X4_2]
86498619test { try toAsciiFail("xn--c8e..xn--bbf", false); } // [A4_2]
86508620test { try toAsciiFail("xn--c8e..xn--bbf", true); } // [A4_2]
86518621test { try toUnicodeFail("xn--c8e.xn--bbf9168i"); } // [V7]
......@@ -8873,19 +8843,14 @@ test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3\xe2\x89\xaf", true)
88738843test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3>\xcc\xb8"); } // [V7]
88748844test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3>\xcc\xb8", false); } // [V7]
88758845test { try toAsciiFail("\xef\xb8\x92\xef\xbd\xa1\xe1\x82\xa3>\xcc\xb8", true); } // [V7]
8876test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3\xe2\x89\xaf"); } // [X4_2]
88778846test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3\xe2\x89\xaf", false); } // [A4_2]
88788847test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3\xe2\x89\xaf", true); } // [A4_2]
8879test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3>\xcc\xb8"); } // [X4_2]
88808848test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3>\xcc\xb8", false); } // [A4_2]
88818849test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe1\x82\xa3>\xcc\xb8", true); } // [A4_2]
8882test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83>\xcc\xb8"); } // [X4_2]
88838850test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83>\xcc\xb8", false); } // [A4_2]
88848851test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83>\xcc\xb8", true); } // [A4_2]
8885test { try toUnicodeFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83\xe2\x89\xaf"); } // [X4_2]
88868852test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83\xe2\x89\xaf", false); } // [A4_2]
88878853test { try toAsciiFail("\xe3\x80\x82\xe3\x80\x82\xe2\xb4\x83\xe2\x89\xaf", true); } // [A4_2]
8888test { try toUnicodeFail("..xn--hdh782b"); } // [X4_2]
88898854test { try toAsciiFail("..xn--hdh782b", false); } // [A4_2]
88908855test { try toAsciiFail("..xn--hdh782b", true); } // [A4_2]
88918856test { try toUnicodeFail("\xef\xb8\x92\xef\xbd\xa1\xe2\xb4\x83>\xcc\xb8"); } // [V7]
......@@ -9035,7 +9000,6 @@ test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\xbf", true); } //
90359000test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\x9d"); } // [B1, C1, C2]
90369001test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\x9d", false); } // [B1, C1, C2]
90379002test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8d.\xf0\x9e\xa4\x9d", true); } // [A4_2]
9038test { try toUnicodeFail(".xn--3e6h"); } // [X4_2]
90399003test { try toAsciiFail(".xn--3e6h", false); } // [A4_2]
90409004test { try toAsciiFail(".xn--3e6h", true); } // [A4_2]
90419005test { try toUnicodeFail("xn--0ugc.xn--3e6h"); } // [B1, C1, C2]
......@@ -9227,10 +9191,8 @@ test { try toAsciiFail("xn--skb.xn--osd737a", true); } // [V7]
92279191test { try toUnicodeFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xef\xb8\x92\xf0\x9d\x9f\x95\xe0\xb4\x81"); } // [V7]
92289192test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xef\xb8\x92\xf0\x9d\x9f\x95\xe0\xb4\x81", false); } // [V7]
92299193test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xef\xb8\x92\xf0\x9d\x9f\x95\xe0\xb4\x81", true); } // [V7]
9230test { try toUnicodeFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xe3\x80\x827\xe0\xb4\x81"); } // [X4_2]
92319194test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xe3\x80\x827\xe0\xb4\x81", false); } // [A4_2]
92329195test { try toAsciiFail("\xe3\xa8\x9b\xf0\x98\xb1\x8e.\xe3\x80\x827\xe0\xb4\x81", true); } // [A4_2]
9233test { try toUnicodeFail("xn--mbm8237g..xn--7-7hf"); } // [X4_2]
92349196test { try toAsciiFail("xn--mbm8237g..xn--7-7hf", false); } // [A4_2]
92359197test { try toAsciiFail("xn--mbm8237g..xn--7-7hf", true); } // [A4_2]
92369198test { try toUnicodeFail("xn--mbm8237g.xn--7-7hf1526p"); } // [V7]
......@@ -9824,7 +9786,6 @@ test { try toAsciiFail("\xe2\x80\x8d.j", true); } // [A4_2]
98249786test { try toUnicodeFail("\xe2\x80\x8d.J"); } // [C2]
98259787test { try toAsciiFail("\xe2\x80\x8d.J", false); } // [C2]
98269788test { try toAsciiFail("\xe2\x80\x8d.J", true); } // [A4_2]
9827test { try toUnicodeFail(".j"); } // [X4_2]
98289789test { try toAsciiFail(".j", false); } // [A4_2]
98299790test { try toAsciiFail(".j", true); } // [A4_2]
98309791test { try toUnicodeFail("xn--1ug.j"); } // [C2]
......@@ -10778,7 +10739,6 @@ test { try toAsciiFail("\xe2\x80\x8c\xef\xbd\xa1\xef\xb8\x92", true); } // [V7,
1077810739test { try toUnicodeFail("\xe2\x80\x8c\xe3\x80\x82\xe3\x80\x82"); } // [C1, X4_2]
1077910740test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe3\x80\x82", false); } // [C1, A4_2]
1078010741test { try toAsciiFail("\xe2\x80\x8c\xe3\x80\x82\xe3\x80\x82", true); } // [A4_2]
10781test { try toUnicodeFail(".."); } // [X4_2]
1078210742test { try toAsciiFail("..", false); } // [A4_2]
1078310743test { try toAsciiFail("..", true); } // [A4_2]
1078410744test { try toUnicodeFail("xn--0ug.."); } // [C1, X4_2]
......@@ -11000,7 +10960,6 @@ test { try toAsciiFail("\xe2\x80\x8d51.\xe3\x80\x82\xe2\x89\xaf8\xe2\x80\x8d", t
1100010960test { try toUnicodeFail("\xe2\x80\x8d51.\xe3\x80\x82>\xcc\xb88\xe2\x80\x8d"); } // [C2, X4_2]
1100110961test { try toAsciiFail("\xe2\x80\x8d51.\xe3\x80\x82>\xcc\xb88\xe2\x80\x8d", false); } // [C2, A4_2]
1100210962test { try toAsciiFail("\xe2\x80\x8d51.\xe3\x80\x82>\xcc\xb88\xe2\x80\x8d", true); } // [A4_2]
11003test { try toUnicodeFail("51..xn--8-ogo"); } // [X4_2]
1100410963test { try toAsciiFail("51..xn--8-ogo", false); } // [A4_2]
1100510964test { try toAsciiFail("51..xn--8-ogo", true); } // [A4_2]
1100610965test { try toUnicodeFail("xn--51-l1t..xn--8-ugn00i"); } // [C2, X4_2]
......@@ -13598,7 +13557,6 @@ test { try toAsciiFail("\xe3\x80\x82\xe1\x82\xb6\xcd\xa6.\xe2\x80\x8c", true); }
1359813557test { try toUnicodeFail("\xe3\x80\x82\xe2\xb4\x96\xcd\xa6.\xe2\x80\x8c"); } // [C1, X4_2]
1359913558test { try toAsciiFail("\xe3\x80\x82\xe2\xb4\x96\xcd\xa6.\xe2\x80\x8c", false); } // [C1, A4_2]
1360013559test { try toAsciiFail("\xe3\x80\x82\xe2\xb4\x96\xcd\xa6.\xe2\x80\x8c", true); } // [A4_2]
13601test { try toUnicodeFail(".xn--hva754s."); } // [X4_2]
1360213560test { try toAsciiFail(".xn--hva754s.", false); } // [A4_2]
1360313561test { try toAsciiFail(".xn--hva754s.", true); } // [A4_2]
1360413562test { try toUnicodeFail(".xn--hva754s.xn--0ug"); } // [C1, X4_2]
......@@ -14168,7 +14126,6 @@ test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.\xe2\x89\xaf9", tr
1416814126test { try toUnicodeFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.>\xcc\xb89"); } // [C1]
1416914127test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.>\xcc\xb89", false); } // [C1]
1417014128test { try toAsciiFail("\xe2\x80\x8c\xe2\x80\x8c\xe3\x80\x821.>\xcc\xb89", true); } // [A4_2]
14171test { try toUnicodeFail(".1.xn--9-ogo"); } // [X4_2]
1417214129test { try toAsciiFail(".1.xn--9-ogo", false); } // [A4_2]
1417314130test { try toAsciiFail(".1.xn--9-ogo", true); } // [A4_2]
1417414131test { try toUnicodeFail("xn--0uga.1.xn--9-ogo"); } // [C1]
......@@ -14933,7 +14890,6 @@ test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\x98", true); } // [
1493314890test { try toUnicodeFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xba"); } // [B1, C2]
1493414891test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xba", false); } // [B1, C2]
1493514892test { try toAsciiFail("\xe2\x80\x8d\xe3\x80\x82\xf0\x9e\xa4\xba", true); } // [A4_2]
14936test { try toUnicodeFail(".xn--ye6h"); } // [X4_2]
1493714893test { try toAsciiFail(".xn--ye6h", false); } // [A4_2]
1493814894test { try toAsciiFail(".xn--ye6h", true); } // [A4_2]
1493914895test { try toUnicodeFail("xn--1ug.xn--ye6h"); } // [B1, C2]
......@@ -15857,7 +15813,6 @@ test { try toAsciiFail("\xe2\x80\x8d.F", true); } // [A4_2]
1585715813test { try toUnicodeFail("\xe2\x80\x8d.f"); } // [C2]
1585815814test { try toAsciiFail("\xe2\x80\x8d.f", false); } // [C2]
1585915815test { try toAsciiFail("\xe2\x80\x8d.f", true); } // [A4_2]
15860test { try toUnicodeFail(".f"); } // [X4_2]
1586115816test { try toAsciiFail(".f", false); } // [A4_2]
1586215817test { try toAsciiFail(".f", true); } // [A4_2]
1586315818test { try toUnicodeFail("xn--1ug.f"); } // [C2]
......@@ -16610,7 +16565,6 @@ test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82ss\x
1661016565test { try toUnicodeFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82Ss\xf0\x91\x93\x83"); } // [C1, C2]
1661116566test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82Ss\xf0\x91\x93\x83", false); } // [C1, C2]
1661216567test { try toAsciiFail("\xe2\x80\x8d\xe2\x80\x8c\xf3\xa0\x86\xaa\xe3\x80\x82Ss\xf0\x91\x93\x83", true); } // [A4_2]
16613test { try toUnicodeFail(".xn--ss-bh7o"); } // [X4_2]
1661416568test { try toAsciiFail(".xn--ss-bh7o", false); } // [A4_2]
1661516569test { try toAsciiFail(".xn--ss-bh7o", true); } // [A4_2]
1661616570test { try toUnicodeFail("xn--0ugb.xn--ss-bh7o"); } // [C1, C2]
......@@ -16646,7 +16600,6 @@ test { try toAsciiFail("\xef\xb8\x92\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa
1664616600test { try toUnicodeFail("\xe3\x80\x82\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa"); } // [C1, X4_2]
1664716601test { try toAsciiFail("\xe3\x80\x82\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", false); } // [C1, A4_2]
1664816602test { try toAsciiFail("\xe3\x80\x82\xe2\x80\x8c\xe3\x83\xb6\xe4\x92\xa9.\xea\xa1\xaa", true); } // [A4_2]
16649test { try toUnicodeFail(".xn--qekw60d.xn--gd9a"); } // [X4_2]
1665016603test { try toAsciiFail(".xn--qekw60d.xn--gd9a", false); } // [A4_2]
1665116604test { try toAsciiFail(".xn--qekw60d.xn--gd9a", true); } // [A4_2]
1665216605test { try toUnicodeFail(".xn--0ug287dj0o.xn--gd9a"); } // [C1, X4_2]
......@@ -16703,10 +16656,8 @@ test { try toAsciiFail("xn--0ug78ol75wzcx4i.xn--jof95xex98m", true); } // [B1, C
1670316656test { try toUnicodeFail("\xf0\x9d\x85\xb5\xef\xbd\xa1\xf0\x9d\x9f\xab\xf0\x9e\x80\x88\xe4\xac\xba\xe2\x92\x88"); } // [V7, X4_2]
1670416657test { try toAsciiFail("\xf0\x9d\x85\xb5\xef\xbd\xa1\xf0\x9d\x9f\xab\xf0\x9e\x80\x88\xe4\xac\xba\xe2\x92\x88", false); } // [V7, A4_2]
1670516658test { try toAsciiFail("\xf0\x9d\x85\xb5\xef\xbd\xa1\xf0\x9d\x9f\xab\xf0\x9e\x80\x88\xe4\xac\xba\xe2\x92\x88", true); } // [V7, A4_2]
16706test { try toUnicodeFail("\xf0\x9d\x85\xb5\xe3\x80\x829\xf0\x9e\x80\x88\xe4\xac\xba1."); } // [X4_2]
1670716659test { try toAsciiFail("\xf0\x9d\x85\xb5\xe3\x80\x829\xf0\x9e\x80\x88\xe4\xac\xba1.", false); } // [A4_2]
1670816660test { try toAsciiFail("\xf0\x9d\x85\xb5\xe3\x80\x829\xf0\x9e\x80\x88\xe4\xac\xba1.", true); } // [A4_2]
16709test { try toUnicodeFail(".xn--91-030c1650n."); } // [X4_2]
1671016661test { try toAsciiFail(".xn--91-030c1650n.", false); } // [A4_2]
1671116662test { try toAsciiFail(".xn--91-030c1650n.", true); } // [A4_2]
1671216663test { try toUnicodeFail(".xn--9-ecp936non25a"); } // [V7, X4_2]
......@@ -17870,7 +17821,6 @@ test { try toAsciiFail("xn----f3j6s87156i.xn--nfb035hoo2p", true); } // [B1, V3,
1787017821test { try toUnicodeFail("\xe2\x80\x8d.\xda\xbd\xd9\xa3\xd6\x96"); } // [B1, C2]
1787117822test { try toAsciiFail("\xe2\x80\x8d.\xda\xbd\xd9\xa3\xd6\x96", false); } // [B1, C2]
1787217823test { try toAsciiFail("\xe2\x80\x8d.\xda\xbd\xd9\xa3\xd6\x96", true); } // [A4_2]
17873test { try toUnicodeFail(".xn--hcb32bni"); } // [X4_2]
1787417824test { try toAsciiFail(".xn--hcb32bni", false); } // [A4_2]
1787517825test { try toAsciiFail(".xn--hcb32bni", true); } // [A4_2]
1787617826test { try toUnicodeFail("xn--1ug.xn--hcb32bni"); } // [B1, C2]