blob: e3e402b7d38515492acd8c3bcf39ec0a816d9c63 [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="../../resources/js-test.js"></script>
</head>
<body>
<script>
description("This test verifies that certain legacy iOS text encodings are not supported.");
debug("The following encodings should not be supported");
let iosLegacyEncodings = ['macos-6-10.2','macos-6_2-10.4', 'macos-35-10.2', 'macos-29-10.2', 'macos-7_3-10.2', 'softbank-sjis'];
for (let encoding of iosLegacyEncodings) {
let canonical_name_expr = 'new TextDecoder("' + encoding + '").encoding';
shouldThrow(canonical_name_expr);
}
debug("The following encoding names are supported by WebKit cross-platform, but some may be removed at a later time.");
let validForNow = [
{encoding: 'x-mac-greek', aliases: ['x-mac-greek', 'windows-10006', 'macgr', 'x-macgreek']},
{encoding: 'x-mac-turkish', aliases: ['x-mac-turkish', 'windows-10081', 'mactr', 'x-macturkish']},
{encoding: 'x-mac-centraleurroman', aliases: ['x-mac-centraleurroman', 'windows-10029', 'x-mac-ce', 'macce', 'maccentraleurope', 'x-maccentraleurope']},
{encoding: 'x-mac-cyrillic', aliases: ['x-mac-cyrillic', 'windows-10007', 'mac-cyrillic', 'maccy', 'x-maccyrillic', 'x-macukraine']}
];
for (let encoding of validForNow) {
for (let alias of encoding.aliases) {
let canonical_name_expr = 'new TextDecoder("' + alias + '").encoding';
shouldBe(canonical_name_expr, '"' + encoding.encoding + '"');
}
}
</script>
</body>
</html>