Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(299)

Side by Side Diff: third_party/WebKit/LayoutTests/external/wpt/dom/nodes/Document-characterSet-normalization.html

Issue 2657583002: Import wpt@cf62b859e6b890abc34f8140d185ba91df95c5b6 (Closed)
Patch Set: Modify TestExpectations or download new baselines for tests. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 <!doctype html>
2 <title>document.characterSet (inputEncoding and charset as aliases) normalizatio n tests</title>
3 <link rel=author title="Aryeh Gregor" href=ayg@aryeh.name>
4 <meta name=timeout content=long>
5 <div id=log></div>
6 <script src=/resources/testharness.js></script>
7 <script src=/resources/testharnessreport.js></script>
8 <style>iframe { display: none }</style>
9 <script>
10 "use strict";
11
12 // Taken straight from https://encoding.spec.whatwg.org/
13 var encodingMap = {
14 "UTF-8": [
15 "unicode-1-1-utf-8",
16 "utf-8",
17 "utf8",
18 // As we use <meta>, utf-16 will map to utf-8 per
19 // https://html.spec.whatwg.org/multipage/#documentEncoding
20 "utf-16",
21 "utf-16le",
22 "utf-16be",
23 ],
24 "IBM866": [
25 "866",
26 "cp866",
27 "csibm866",
28 "ibm866",
29 ],
30 "ISO-8859-2": [
31 "csisolatin2",
32 "iso-8859-2",
33 "iso-ir-101",
34 "iso8859-2",
35 "iso88592",
36 "iso_8859-2",
37 "iso_8859-2:1987",
38 "l2",
39 "latin2",
40 ],
41 "ISO-8859-3": [
42 "csisolatin3",
43 "iso-8859-3",
44 "iso-ir-109",
45 "iso8859-3",
46 "iso88593",
47 "iso_8859-3",
48 "iso_8859-3:1988",
49 "l3",
50 "latin3",
51 ],
52 "ISO-8859-4": [
53 "csisolatin4",
54 "iso-8859-4",
55 "iso-ir-110",
56 "iso8859-4",
57 "iso88594",
58 "iso_8859-4",
59 "iso_8859-4:1988",
60 "l4",
61 "latin4",
62 ],
63 "ISO-8859-5": [
64 "csisolatincyrillic",
65 "cyrillic",
66 "iso-8859-5",
67 "iso-ir-144",
68 "iso8859-5",
69 "iso88595",
70 "iso_8859-5",
71 "iso_8859-5:1988",
72 ],
73 "ISO-8859-6": [
74 "arabic",
75 "asmo-708",
76 "csiso88596e",
77 "csiso88596i",
78 "csisolatinarabic",
79 "ecma-114",
80 "iso-8859-6",
81 "iso-8859-6-e",
82 "iso-8859-6-i",
83 "iso-ir-127",
84 "iso8859-6",
85 "iso88596",
86 "iso_8859-6",
87 "iso_8859-6:1987",
88 ],
89 "ISO-8859-7": [
90 "csisolatingreek",
91 "ecma-118",
92 "elot_928",
93 "greek",
94 "greek8",
95 "iso-8859-7",
96 "iso-ir-126",
97 "iso8859-7",
98 "iso88597",
99 "iso_8859-7",
100 "iso_8859-7:1987",
101 "sun_eu_greek",
102 ],
103 "ISO-8859-8": [
104 "csiso88598e",
105 "csisolatinhebrew",
106 "hebrew",
107 "iso-8859-8",
108 "iso-8859-8-e",
109 "iso-ir-138",
110 "iso8859-8",
111 "iso88598",
112 "iso_8859-8",
113 "iso_8859-8:1988",
114 "visual",
115 ],
116 "ISO-8859-8-I": [
117 "csiso88598i",
118 "iso-8859-8-i",
119 "logical",
120 ],
121 "ISO-8859-10": [
122 "csisolatin6",
123 "iso-8859-10",
124 "iso-ir-157",
125 "iso8859-10",
126 "iso885910",
127 "l6",
128 "latin6",
129 ],
130 "ISO-8859-13": [
131 "iso-8859-13",
132 "iso8859-13",
133 "iso885913",
134 ],
135 "ISO-8859-14": [
136 "iso-8859-14",
137 "iso8859-14",
138 "iso885914",
139 ],
140 "ISO-8859-15": [
141 "csisolatin9",
142 "iso-8859-15",
143 "iso8859-15",
144 "iso885915",
145 "iso_8859-15",
146 "l9",
147 ],
148 "ISO-8859-16": [
149 "iso-8859-16",
150 ],
151 "KOI8-R": [
152 "cskoi8r",
153 "koi",
154 "koi8",
155 "koi8-r",
156 "koi8_r",
157 ],
158 "KOI8-U": [
159 "koi8-ru",
160 "koi8-u",
161 ],
162 "macintosh": [
163 "csmacintosh",
164 "mac",
165 "macintosh",
166 "x-mac-roman",
167 ],
168 "windows-874": [
169 "dos-874",
170 "iso-8859-11",
171 "iso8859-11",
172 "iso885911",
173 "tis-620",
174 "windows-874",
175 ],
176 "windows-1250": [
177 "cp1250",
178 "windows-1250",
179 "x-cp1250",
180 ],
181 "windows-1251": [
182 "cp1251",
183 "windows-1251",
184 "x-cp1251",
185 ],
186 "windows-1252": [
187 "ansi_x3.4-1968",
188 "ascii",
189 "cp1252",
190 "cp819",
191 "csisolatin1",
192 "ibm819",
193 "iso-8859-1",
194 "iso-ir-100",
195 "iso8859-1",
196 "iso88591",
197 "iso_8859-1",
198 "iso_8859-1:1987",
199 "l1",
200 "latin1",
201 "us-ascii",
202 "windows-1252",
203 "x-cp1252",
204 // As we use <meta>, x-user-defined will map to windows-1252 per
205 // https://html.spec.whatwg.org/multipage/#documentEncoding
206 "x-user-defined"
207 ],
208 "windows-1253": [
209 "cp1253",
210 "windows-1253",
211 "x-cp1253",
212 ],
213 "windows-1254": [
214 "cp1254",
215 "csisolatin5",
216 "iso-8859-9",
217 "iso-ir-148",
218 "iso8859-9",
219 "iso88599",
220 "iso_8859-9",
221 "iso_8859-9:1989",
222 "l5",
223 "latin5",
224 "windows-1254",
225 "x-cp1254",
226 ],
227 "windows-1255": [
228 "cp1255",
229 "windows-1255",
230 "x-cp1255",
231 ],
232 "windows-1256": [
233 "cp1256",
234 "windows-1256",
235 "x-cp1256",
236 ],
237 "windows-1257": [
238 "cp1257",
239 "windows-1257",
240 "x-cp1257",
241 ],
242 "windows-1258": [
243 "cp1258",
244 "windows-1258",
245 "x-cp1258",
246 ],
247 "x-mac-cyrillic": [
248 "x-mac-cyrillic",
249 "x-mac-ukrainian",
250 ],
251 "GBK": [
252 "chinese",
253 "csgb2312",
254 "csiso58gb231280",
255 "gb2312",
256 "gb_2312",
257 "gb_2312-80",
258 "gbk",
259 "iso-ir-58",
260 "x-gbk",
261 ],
262 "gb18030": [
263 "gb18030",
264 ],
265 "Big5": [
266 "big5",
267 "big5-hkscs",
268 "cn-big5",
269 "csbig5",
270 "x-x-big5",
271 ],
272 "EUC-JP": [
273 "cseucpkdfmtjapanese",
274 "euc-jp",
275 "x-euc-jp",
276 ],
277 "ISO-2022-JP": [
278 "csiso2022jp",
279 "iso-2022-jp",
280 ],
281 "Shift_JIS": [
282 "csshiftjis",
283 "ms932",
284 "ms_kanji",
285 "shift-jis",
286 "shift_jis",
287 "sjis",
288 "windows-31j",
289 "x-sjis",
290 ],
291 "EUC-KR": [
292 "cseuckr",
293 "csksc56011987",
294 "euc-kr",
295 "iso-ir-149",
296 "korean",
297 "ks_c_5601-1987",
298 "ks_c_5601-1989",
299 "ksc5601",
300 "ksc_5601",
301 "windows-949",
302 ],
303 "replacement": [
304 "csiso2022kr",
305 "hz-gb-2312",
306 "iso-2022-cn",
307 "iso-2022-cn-ext",
308 "iso-2022-kr",
309 ],
310 };
311
312 // Add spaces and mix up case
313 Object.keys(encodingMap).forEach(function(name) {
314 var lower = encodingMap[name];
315 var upper = encodingMap[name].map(function(s) { return s.toUpperCase() });
316 var mixed = encodingMap[name].map(function(s) {
317 var ret = "";
318 for (var i = 0; i < s.length; i += 2) {
319 ret += s[i].toUpperCase();
320 if (i + 1 < s.length) {
321 ret += s[i + 1];
322 }
323 }
324 return ret;
325 });
326 var spacey = encodingMap[name].map(function(s) {
327 return " \t\n\f\r" + s + " \t\n\f\r";
328 });
329 encodingMap[name] = [];
330 for (var i = 0; i < lower.length; i++) {
331 encodingMap[name].push(lower[i]);
332 /*
333 if (lower[i] != upper[i]) {
334 encodingMap[name].push(upper[i]);
335 }
336 if (lower[i] != mixed[i] && upper[i] != mixed[i]) {
337 encodingMap[name].push(mixed[i]);
338 }
339 encodingMap[name].push(spacey[i]);
340 */
341 }
342 });
343
344 Object.keys(encodingMap).forEach(function(name) {
345 encodingMap[name].forEach(function(label) {
346 var iframe = document.createElement("iframe");
347 var t = async_test("Name " + format_value(name) +
348 " has label " + format_value(label) + " (characterSet)");
349 var t2 = async_test("Name " + format_value(name) +
350 " has label " + format_value(label) + " (inputEncoding)") ;
351 var t3 = async_test("Name " + format_value(name) +
352 " has label " + format_value(label) + " (charset)");
353 iframe.src = "encoding.py?label=" + label;
354 iframe.onload = function() {
355 t.step(function() {
356 assert_equals(iframe.contentDocument.characterSet, name);
357 });
358 t2.step(function() {
359 assert_equals(iframe.contentDocument.inputEncoding, name);
360 });
361 t3.step(function() {
362 assert_equals(iframe.contentDocument.charset, name);
363 });
364 document.body.removeChild(iframe);
365 t.done();
366 t2.done();
367 t3.done();
368 };
369 document.body.appendChild(iframe);
370 });
371 });
372 </script>
373 <!-- vim: set expandtab tabstop=2 shiftwidth=2: -->
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698