Remove TEC support and all TEC-only encodings except EUC-TW (which now uses ICU)
[WebKit-https.git] / LayoutTests / fast / encoding / legacy-tec-encodings.html
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="utf-8">
5 <script src="../../resources/js-test.js"></script>
6 </head>
7 <body>
8 <script>
9 description("This test verifies that encodings that used to be supported by TEC on macOS are not supported.");
10
11 debug("The following encodings should not be supported");
12 let tecLegacyEncodings = ['cp950', 'cp737', 'ibm737',
13 'ISO-2022-JP-3', 'JIS_C6226-1978', 'Shift_JIS_X0213-2000', 'ibm-942_P12A-1999', 'ibm-1399_P110-2003',
14 'JIS_X0212-1990', 'x-mac-arabic', 'x-mac-croatian', 'x-mac-hebrew', 'x-mac-icelandic', 'x-mac-romanian', 'x-mac-thai', 'johab', 'x-mac-dingbats', 'x-mac-symbol', 'JIS_X0208-1990', 'JIS_X0208-1983', 'csiso159jisx02121990', 'isoir159', 'x0212', 'jis_x0208-1983', 'csiso87jisx0208', 'isoir87',
15 'ibm-953_P100-2000', 'macos-518-10.2', 'macos-36_2-10.2', 'macos-1285-10.2', 'macos-37_5-10.2', 'macos-38_2-10.2', 'macos-21-10.5', 'windows-1361-2000', 'macos-34-10.2', 'macos-33-10.5', 'ibm-952_P110-1997', 'ibm-955_P110-1997',
16 'x-mac-chinesesimp', 'xmacsimpchinese', 'x-mac-chinesetrad', 'xmactradchinese', 'x-mac-japanese', 'x-mac-korean', 'x-mac-vt100', 'x-nextstep', 'x-mac-farsi', 'x-mac-roman-latin1', 'x-mac-devanagari', 'x-mac-gujarati', 'x-mac-gurmukhi', 'x-mac-tibetan',
17 ]; 
18
19 for (let encoding of tecLegacyEncodings) {
20     let canonical_name_expr = 'new TextDecoder("' + encoding + '").encoding';
21     shouldThrow(canonical_name_expr);
22 }
23
24 debug("The following encoding names are supported by WebKit cross-platform, but some may be removed at a later time.");
25 let validForNow = [
26     {encoding: 'euc-tw', aliases: ['EUC-TW']},
27 ];
28
29 for (let encoding of validForNow) {
30     for (let alias of encoding.aliases) {
31          let canonical_name_expr = 'new TextDecoder("' + alias + '").encoding';
32          shouldBe(canonical_name_expr, '"' + encoding.encoding + '"');
33     }
34 }
35
36
37 </script>
38 </body>
39 </html>