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

Side by Side Diff: third_party/WebKit/LayoutTests/fast/storage/serialized-script-value.html

Issue 2654993009: Remove fast/storage/serialized-script-value.html and serialized-script-value-collections.html. (Closed)
Patch Set: remove associated resources, too 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 <html>
3 <head>
4 <script src="../../resources/js-test.js"></script>
5 <script src="resources/serialized-script-value.js"></script>
6 </head>
7 <body>
8
9 <div style="position: fixed; left: 0; top: 0;">
10 <!-- this shouldn't scroll, because we're dropping a file on it -->
11 <input type="file" id="fileInput" />
12 </div>
13
14 <script>
15
16 function testSerialization(obj, values, oldFormat, serializeExceptionValue) {
17 _testSerialization(2, obj, values, oldFormat, serializeExceptionValue);
18 if (typeof oldFormat === "undefined" ) {
19 debug("");
20 debug("Backwards compatibility with version 3 serialization.");
21 _testSerialization(2, obj, values, forVersion(3, values), serializeExcep tionValue);
22 }
23 }
24
25 // We only test a few cases of the "old" serialization format because
26 // that is all that was left around from previous tests. Those values
27 // are only persisted out in the world in IndexedDB stores that were
28 // written with implementations built before mid-2011.
29 testSerialization({foo: 'zoo', bar: {baz: 'myNewKey'}},
30 [0x536f, 0x6603, 0x6f6f, 0x0353, 0x6f7a, 0x536f, 0x6203,
31 0x7261, 0x536f, 0x6203, 0x7a61, 0x0853, 0x796d, 0x654e,
32 0x4b77, 0x7965, 0x017b, 0x027b]);
33
34 testSerialization({foo: 'zoo', bar: 'myNewKey'},
35 [0x536f, 0x6603, 0x6f6f, 0x0353, 0x6f7a, 0x536f, 0x6203,
36 0x7261, 0x0853, 0x796d, 0x654e, 0x4b77, 0x7965, 0x027b]);
37
38 testSerialization([], [0x0041, 0x0024, 0x0000 ]);
39 testSerialization({foo: "zoo"},
40 [0x536f, 0x6603, 0x6f6f, 0x0353, 0x6f7a, 0x7b6f, 0x0001],
41 [0x0353, 0x6f66, 0x536f, 0x7a03, 0x6f6f, 0x017b]);
42 testSerialization({foo: null},
43 [0x536f, 0x6603, 0x6f6f, 0x7b30, 0x0001],
44 [0x0353, 0x6f66, 0x306f, 0x017b]);
45 testSerialization({}, [0x7b6f, 0x0000], [0x007b]);
46
47 testSerialization(undefined, [0x005f]);
48 testSerialization(true, [0x0054]);
49 testSerialization(false, [0x0046]);
50 // Sparse array deserialization is broken.
51 // See: https://bugs.webkit.org/show_bug.cgi?id=96838
52 // testSerialization(new Array(100), [0x003f, 0x6461, 0x0040, 0x0064]);
53 testSerialization(10, [0x1449]);
54 testSerialization(-10, [0x1349]);
55 // This value is encoded differently by V8 depending on the CPU architecture,
56 // but the result can be read on any architecture. This code is tested in V8.
57 //testSerialization(Math.pow(2,30), [0x8049, 0x8080, 0x0880]);
58 testSerialization(Math.pow(2,55), [0x004e, 0x0000, 0x0000,
59 0x6000, 0x0043]);
60 testSerialization(1.23, [0xae4e, 0xe147, 0x147a, 0xf3ae, 0x003f]);
61
62 // Exercise special cases for Int32/Uint32.
63 // This value is encoded differently by V8 depending on the CPU architecture,
64 // but the result can be read on any architecture. This code is tested in V8.
65 //testSerialization( 0x7fffffff, [0xfe49, 0xffff, 0x0fff]);
66 //testSerialization(-0x80000000, [0xff49, 0xffff, 0x0fff]);
67 testSerialization( 0x80000000, [0x004e, 0x0000, 0x0000, 0xe000, 0x0041]);
68 testSerialization( 0xffffffff, [0x004e, 0xe000, 0xffff, 0xefff, 0x0041]);
69
70 testSerialization("", [0x0053]);
71 testSerialization("abc", [0x0353, 0x6261, 0x0063]);
72 testSerialization({integer: 123}, [0x536f, 0x6907, 0x746e, 0x6765, 0x7265,
73 0xf649, 0x7b01, 0x0001]);
74 testSerialization({string: "str"}, [0x536f, 0x7306, 0x7274, 0x6e69, 0x5367,
75 0x7303, 0x7274, 0x017b]);
76 testSerialization({list: [1,2,3]}, [0x536f, 0x6c04, 0x7369, 0x4174, 0x4903,
77 0x4902, 0x4904, 0x2406, 0x0300, 0x017b]);
78 testSerialization(null, [0x0030]);
79 testSerialization(/abc/, [0x0352, 0x6261, 0x0063]);
80
81 var innerObject = {hello: "there"};
82 var outerObject = {inner: innerObject};
83 outerObject['outer'] = innerObject;
84 testSerialization(outerObject, [0x536f, 0x6905, 0x6e6e, 0x7265, 0x536f,
85 0x6805, 0x6c65, 0x6f6c, 0x0553, 0x6874,
86 0x7265, 0x7b65, 0x5301, 0x6f05, 0x7475,
87 0x7265, 0x015e, 0x027b]);
88 testSerialization(innerObject, [0x536f, 0x6805, 0x6c65, 0x6f6c, 0x0553,
89 0x6874, 0x7265, 0x7b65, 0x0001]);
90
91 var unicodeObject = {a: 'a', u: String.fromCharCode(0x03B1,0x03B2), d: 42};
92 testSerialization(unicodeObject,
93 [0x536f, 0x6101, 0x0153, 0x5361, 0x7501, 0x0463, 0x03b1,
94 0x03b2, 0x0153, 0x4964, 0x7b54, 0x0003],
95 [0x01ff, 0x003f, 0x3f6f, 0x5301, 0x6101,
96 0x013f, 0x0153, 0x3f61, 0x5301, 0x7501,
97 0x013f, 0x0453, 0xb1ce, 0xb2ce, 0x013f,
98 0x0153, 0x3f64, 0x4901, 0x7b54, 0x0003]);
99 unicodeObject.a = 'ab';
100 testSerialization(unicodeObject,
101 [0x536f, 0x6101, 0x0253, 0x6261, 0x0153, 0x0075, 0x0463,
102 0x03b1, 0x03b2, 0x0153, 0x4964, 0x7b54, 0x0003],
103 [0x01ff, 0x003f, 0x3f6f, 0x5301, 0x6101,
104 0x013f, 0x0253, 0x6261, 0x013f, 0x0153,
105 0x3f75, 0x5301, 0xce04, 0xceb1, 0x3fb2,
106 0x5301, 0x6401, 0x013f, 0x5449, 0x037b]);
107
108 var arrayObject = [];
109 arrayObject['a'] = true;
110 arrayObject['b'] = false;
111 arrayObject['foo'] = 123;
112 arrayObject['bar'] = 456;
113 arrayObject[''] = null;
114 testSerialization(arrayObject,
115 [0x0041, 0x0153, 0x5461, 0x0153, 0x4662, 0x0353, 0x6f66,
116 0x496f, 0x01f6, 0x0353, 0x6162, 0x4972, 0x0790, 0x0053,
117 0x2430, 0x0005],
118 [0x02ff, 0x003f, 0x0041, 0x013f, 0x0153, // deserialize from v 2
119 0x3f61, 0x5401, 0x013f, 0x0153, 0x3f62,
120 0x4601, 0x013f, 0x0353, 0x6f66, 0x3f6f,
121 0x4901, 0x01f6, 0x013f, 0x0353, 0x6162,
122 0x3f72, 0x4901, 0x0790, 0x013f, 0x0053,
123 0x013f, 0x2430, 0x0005]);
124
125 arrayObject[0] = 'foo';
126 arrayObject[1] = 'bar';
127 testSerialization(arrayObject,
128 [0x0241, 0x0353, 0x6f66, 0x536f, 0x6203, 0x7261, 0x0153,
129 0x5461, 0x0153, 0x4662, 0x0353, 0x6f66, 0x496f, 0x01f6,
130 0x0353, 0x6162, 0x4972, 0x0790, 0x0053, 0x2430, 0x0205],
131 [0x01ff, 0x003f, 0x0241, 0x013f, 0x0353,
132 0x6f66, 0x3f6f, 0x5301, 0x6203, 0x7261,
133 0x013f, 0x0153, 0x3f61, 0x5401, 0x013f,
134 0x0153, 0x3f62, 0x4601, 0x013f, 0x0353,
135 0x6f66, 0x3f6f, 0x4901, 0x01f6, 0x013f,
136 0x0353, 0x6162, 0x3f72, 0x4901, 0x0790,
137 0x013f, 0x0053, 0x013f, 0x2430, 0x0205]);
138
139 testSerialization(function(){}, [], null, DOMException.DATA_CLONE_ERR);
140
141 testBlobSerialization();
142
143 testFileSerialization();
144 </script>
145 </body>
146 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698