Chromium Code Reviews| Index: components/url_formatter/url_formatter_unittest.cc |
| diff --git a/components/url_formatter/url_formatter_unittest.cc b/components/url_formatter/url_formatter_unittest.cc |
| index 5b2646ce09c7c6677e91396cfaeb8c3cb9f5bae8..1b865bc5d16958c9ae97a4dd012cca08baa027ca 100644 |
| --- a/components/url_formatter/url_formatter_unittest.cc |
| +++ b/components/url_formatter/url_formatter_unittest.cc |
| @@ -187,6 +187,8 @@ const IDNTestCase idn_cases[] = { |
| {"xn--a-xbba.com", L"a\x0301\x0301.com", false}, |
| // 'a' with acuted accent + another acute accent |
| {"xn--1ca20i.com", L"\x00e1\x0301.com", false}, |
| + // Combining mark at the beginning |
| + {"xn--abc-fdc.jp", L"\x0300" L"abc.jp", false}, |
| // Mixed script confusable |
| // google with Armenian Small Letter Oh(U+0585) |
| @@ -199,17 +201,51 @@ const IDNTestCase idn_cases[] = { |
| // Hiragana HE(U+3078) mixed with Katakana |
| {"xn--49jxi3as0d0fpc.com", |
| L"\x30e2\x30d2\x30fc\x30c8\x3078\x30d6\x30f3.com", false}, |
| + |
| + // U+30FC should be preceded by a Hiragana/Katakana. |
| + // Katakana + U+30FC + Han |
| + {"xn--lck0ip02qw5ya.jp", L"\x30ab\x30fc\x91ce\x7403.jp", true}, |
| + // Hiragana + U+30FC + Han |
| + {"xn--u8j5tr47nw5ya.jp", L"\x304b\x30fc\x91ce\x7403.jp", true}, |
| // U+30FC + Han |
| {"xn--weka801xo02a.com", L"\x30fc\x52d5\x753b\x30fc.com", false}, |
| // Han + U+30FC + Han |
| {"xn--wekz60nb2ay85atj0b.jp", L"\x65e5\x672c\x30fc\x91ce\x7403.jp", false}, |
| + // U+30FC at the beginning |
| + {"xn--wek060nb2a.jp", L"\x30fc\x65e5\x672c", false}, |
| // Latin + U+30FC + Latin |
| {"xn--abcdef-r64e.jp", L"abc\x30fc" L"def.jp", false}, |
| + |
| + // U+30FB (・) is not allowed next to Latin, but allowed otherwise. |
| + // U+30FB + Han |
| + {"xn--vekt920a.jp", L"\x30fb\x91ce.jp", true}, |
| + // Han + U+30FB + Han |
| + {"xn--vek160nb2ay85atj0b.jp", L"\x65e5\x672c\x30fb\x91ce\x7403.jp", true}, |
| // Latin + U+30FB + Latin |
| {"xn--abcdef-k64e.jp", L"abc\x30fb" L"def.jp", false}, |
| // U+30FB + Latin |
| {"xn--abc-os4b.jp", L"\x30fb" L"abc.jp", false}, |
| + // U+30FD (ヽ) is allowed only after Katakana. |
| + // Katakana + U+30FD |
| + {"xn--lck2i.jp", L"\x30ab\x30fd.jp", true}, |
| + // Hiragana + U+30FD |
| + {"xn--u8j7t.jp", L"\x304b\x30fd.jp", false}, |
| + // Han + U+30FD |
| + {"xn--xek368f.jp", L"\x4e00\x30fd.jp", false}, |
| + {"xn--aa-mju.jp", L"a\x30fd.jp", false}, |
| + {"xn--a1-bo4a.jp", L"a1\x30fd.jp", false}, |
| + |
| + // U+30FE (ヾ) is allowed only after Katakana. |
| + // Katakana + U+30FE |
| + {"xn--lck4i.jp", L"\x30ab\x30fe.jp", true}, |
| + // Hiragana + U+30FD |
|
Peter Kasting
2017/03/28 22:42:58
Nit: 30FE?
|
| + {"xn--u8j9t.jp", L"\x304b\x30fe.jp", false}, |
| + // Han + U+30FD |
|
Peter Kasting
2017/03/28 22:42:58
Nit: 30FE?
|
| + {"xn--yek168f.jp", L"\x4e00\x30fe.jp", false}, |
| + {"xn--a-oju.jp", L"a\x30fe.jp", false}, |
| + {"xn--a1-eo4a.jp", L"a1\x30fe.jp", false}, |
| + |
| // Cyrillic labels made of Latin-look-alike Cyrillic letters. |
| // ѕсоре.com with ѕсоре in Cyrillic |
| {"xn--e1argc3h.com", L"\x0455\x0441\x043e\x0440\x0435.com", false}, |