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

Side by Side Diff: LayoutTests/fast/js/mozilla/strict/script-tests/11.1.5.js

Issue 467903003: Remove duplicate property test (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Remove tests instead Created 6 years, 4 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
(Empty)
1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
3 /*
4 * Any copyright is dedicated to the Public Domain.
5 * http://creativecommons.org/licenses/publicdomain/
6 */
7
8 /* Simple identifier labels. */
9 assertEq(testLenientAndStrict('({x:1, x:1})',
10 parsesSuccessfully,
11 parseRaisesException(SyntaxError)),
12 true);
13
14 assertEq(testLenientAndStrict('({x:1, y:1})',
15 parsesSuccessfully,
16 parsesSuccessfully),
17 true);
18
19 assertEq(testLenientAndStrict('({x:1, y:1, x:1})',
20 parsesSuccessfully,
21 parseRaisesException(SyntaxError)),
22 true);
23
24 /* Property names can be written as strings, too. */
25 assertEq(testLenientAndStrict('({x:1, "x":1})',
26 parsesSuccessfully,
27 parseRaisesException(SyntaxError)),
28 true);
29
30 assertEq(testLenientAndStrict('({"x":1, x:1})',
31 parsesSuccessfully,
32 parseRaisesException(SyntaxError)),
33 true);
34
35 assertEq(testLenientAndStrict('({"x":1, "x":1})',
36 parsesSuccessfully,
37 parseRaisesException(SyntaxError)),
38 true);
39
40 /* Numeric property names. */
41 assertEq(testLenientAndStrict('({1.5:1, 1.5:1})',
42 parsesSuccessfully,
43 parseRaisesException(SyntaxError)),
44 true);
45
46 assertEq(testLenientAndStrict('({1.5:1, 15e-1:1})',
47 parsesSuccessfully,
48 parseRaisesException(SyntaxError)),
49 true);
50
51 assertEq(testLenientAndStrict('({6.02214179e23:1, 6.02214179e23:1})',
52 parsesSuccessfully,
53 parseRaisesException(SyntaxError)),
54 true);
55
56 assertEq(testLenientAndStrict('({6.02214179e23:1, 3.1415926535:1})',
57 parsesSuccessfully,
58 parsesSuccessfully),
59 true);
60
61 assertEq(testLenientAndStrict('({ 1: 1, "1": 2 })',
62 parsesSuccessfully,
63 parseRaisesException(SyntaxError)),
64 true);
65
66 assertEq(testLenientAndStrict('({ "1": 1, 1: 2 })',
67 parsesSuccessfully,
68 parseRaisesException(SyntaxError)),
69 true);
70
71 assertEq(testLenientAndStrict('({ 2.5: 1, "2.5": 2 })',
72 parsesSuccessfully,
73 parseRaisesException(SyntaxError)),
74 true);
75
76 assertEq(testLenientAndStrict('({ "2.5": 1, 2.5: 2 })',
77 parsesSuccessfully,
78 parseRaisesException(SyntaxError)),
79 true);
80
81 /* Many properties, to exercise JSAtomList's hash-table variant. */
82 assertEq(testLenientAndStrict('({a:1, b:1, c:1, d:1, e:1, f:1, g:1, h:1, i:1, j: 1, k:1, l:1, m:1, n:1, o:1, p:1, q:1, r:1, s:1, t:1, u:1, v:1, w:1, x:1, y:1, z: 1})',
83 parsesSuccessfully,
84 parsesSuccessfully),
85 true);
86
87 assertEq(testLenientAndStrict('({a:1, b:1, c:1, d:1, e:1, f:1, g:1, h:1, i:1, j: 1, k:1, l:1, m:1, n:1, o:1, p:1, q:1, r:1, s:1, t:1, u:1, v:1, w:1, x:1, y:1, a: 1})',
88 parsesSuccessfully,
89 parseRaisesException(SyntaxError)),
90 true);
91
92 /*
93 * Getters, setters, and value properties should conflict only when
94 * appropriate.
95 */
96 assertEq(testLenientAndStrict('({get x() {}, x:1})',
97 parseRaisesException(SyntaxError),
98 parseRaisesException(SyntaxError)),
99 true);
100
101 assertEq(testLenientAndStrict('({x:1, get x() {}})',
102 parseRaisesException(SyntaxError),
103 parseRaisesException(SyntaxError)),
104 true);
105
106 assertEq(testLenientAndStrict('({set x(q) {}, x:1})',
107 parseRaisesException(SyntaxError),
108 parseRaisesException(SyntaxError)),
109 true);
110
111 assertEq(testLenientAndStrict('({x:1, set x(q) {}})',
112 parseRaisesException(SyntaxError),
113 parseRaisesException(SyntaxError)),
114 true);
115
116 assertEq(testLenientAndStrict('({1:1, set 1(q) {}})',
117 parseRaisesException(SyntaxError),
118 parseRaisesException(SyntaxError)),
119 true);
120
121 assertEq(testLenientAndStrict('({set 1(q) {}, 1:1})',
122 parseRaisesException(SyntaxError),
123 parseRaisesException(SyntaxError)),
124 true);
125
126 assertEq(testLenientAndStrict('({"1":1, set 1(q) {}})',
127 parseRaisesException(SyntaxError),
128 parseRaisesException(SyntaxError)),
129 true);
130
131 assertEq(testLenientAndStrict('({set 1(q) {}, "1":1})',
132 parseRaisesException(SyntaxError),
133 parseRaisesException(SyntaxError)),
134 true);
135
136 assertEq(testLenientAndStrict('({get x() {}, set x(q) {}})',
137 parsesSuccessfully,
138 parsesSuccessfully),
139 true);
140
141 assertEq(testLenientAndStrict('({set x(q) {}, get x() {}})',
142 parsesSuccessfully,
143 parsesSuccessfully),
144 true);
145
146 assertEq(testLenientAndStrict('({get x() {}, set x(q) {}, x:1})',
147 parseRaisesException(SyntaxError),
148 parseRaisesException(SyntaxError)),
149 true);
150
151 assertEq(testLenientAndStrict('({set x(q) {}, get x() {}, x:1})',
152 parseRaisesException(SyntaxError),
153 parseRaisesException(SyntaxError)),
154 true);
155
156 assertEq(testLenientAndStrict('({get x() {}, get x() {}})',
157 parseRaisesException(SyntaxError),
158 parseRaisesException(SyntaxError)),
159 true);
160
161 assertEq(testLenientAndStrict('({set x() {}, set x() {}})',
162 parseRaisesException(SyntaxError),
163 parseRaisesException(SyntaxError)),
164 true);
165
166 assertEq(testLenientAndStrict('({get x() {}, set x(q) {}, y:1})',
167 parsesSuccessfully,
168 parsesSuccessfully),
169 true);
170
171 reportCompare(true, true);
172
173 var successfullyParsed = true;
OLDNEW
« no previous file with comments | « LayoutTests/fast/js/mozilla/strict/11.1.5.html ('k') | LayoutTests/ietestcenter/Javascript/11.1.5_4-4-b-1.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698