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

Side by Side Diff: LayoutTests/fast/encoding/api/ascii-supersets.html

Issue 240283013: Convert Encoding API tests to W3C testharness.js (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 8 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 | Annotate | Revision Log
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <script src="../../../resources/js-test.js"></script> 2 <title>Encoding API: ASCII supersets</title>
3 <script src="../../../resources/testharness.js"></script>
4 <script src="../../../resources/testharnessreport.js"></script>
3 <script src="resources/shared.js"></script> 5 <script src="resources/shared.js"></script>
4 <script> 6 <script>
5 7
6 description("Supersets of ASCII decode ASCII correctly");
7
8 // Encodings that have escape codes in 0x00-0x7F 8 // Encodings that have escape codes in 0x00-0x7F
9 var escape_codes = { 9 var escape_codes = {
10 "hz-gb-2312": [ 0x7E ], 10 'hz-gb-2312': [ 0x7E ],
11 "iso-2022-jp": [ 0x1B ], 11 'iso-2022-jp': [ 0x1B ],
12 "iso-2022-kr": [ 0x0E, 0x0F, 0x1B ] 12 'iso-2022-kr': [ 0x0E, 0x0F, 0x1B ]
13 }; 13 };
14 14
15 encodings_table.forEach(function(section) { 15 encodings_table.forEach(function(section) {
16 section.encodings.forEach(function(encoding) { 16 section.encodings.forEach(function(encoding) {
17 if (encoding.name === "replacement") 17 if (encoding.name === 'replacement')
18 return; 18 return;
19 if (utf_encodings.indexOf(encoding.name) !== -1) 19 if (utf_encodings.indexOf(encoding.name) !== -1)
20 return; 20 return;
21 21
22 string = ''; 22 test(function() {
23 decoded = null; 23 var string = '';
24 bytes = []; 24 var bytes = [];
25 for (var i = 0; i < 128; ++i) { 25 for (var i = 0; i < 128; ++i) {
26 if (encoding.name in escape_codes && escape_codes[encoding.name].ind exOf(i) !== -1) 26 if (encoding.name in escape_codes && escape_codes[encoding.name] .indexOf(i) !== -1)
27 continue; 27 continue;
28 string += String.fromCharCode(i); 28 string += String.fromCharCode(i);
29 bytes.push(i); 29 bytes.push(i);
30 } 30 }
31 31
32 decoder = null; 32 var decoder = new TextDecoder(encoding.name);
33 evalAndLog("decoder = new TextDecoder(" + JSON.stringify(encoding.name) + ")"); 33 var decoded = decoder.decode(new Uint8Array(bytes));
34 if (decoder) { 34 assert_equals(decoded, string);
35 evalAndLog("decoded = decoder.decode(new Uint8Array(bytes))"); 35 }, 'ASCII superset encoding: ' + encoding.name);
36 // encodeURIComponent ensures output is printable
37 shouldBe("encodeURIComponent(string)", "encodeURIComponent(decoded)" );
38 }
39 }); 36 });
40 }); 37 });
41 38
42
43 </script> 39 </script>
OLDNEW
« no previous file with comments | « no previous file | LayoutTests/fast/encoding/api/ascii-supersets-expected.txt » ('j') | LayoutTests/fast/encoding/api/basics.html » ('J')

Powered by Google App Engine
This is Rietveld 408576698