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

Side by Side Diff: tests/language/compile_time_constant_b_test.dart

Issue 11235054: Removed IllegalAccessException and UnsupportedOperationException. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 1 month 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 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 const m1 = const { '__proto__': 400 + 99 }; 5 const m1 = const { '__proto__': 400 + 99 };
6 const m2 = const { 'a': 499, 'b': 42 }; 6 const m2 = const { 'a': 499, 'b': 42 };
7 const m3 = const { '__proto__': 499 }; 7 const m3 = const { '__proto__': 499 };
8 8
9 bool isIllegalAccessException(o) => o is IllegalAccessException; 9 bool isStateError(o) => o is StateError;
10 10
11 main() { 11 main() {
12 Expect.equals(499, m1['__proto__']); 12 Expect.equals(499, m1['__proto__']);
13 Expect.equals(null, m1['b']); 13 Expect.equals(null, m1['b']);
14 Expect.listEquals(['__proto__'], m1.getKeys()); 14 Expect.listEquals(['__proto__'], m1.getKeys());
15 Expect.listEquals([499], m1.getValues()); 15 Expect.listEquals([499], m1.getValues());
16 Expect.isTrue(m1.containsKey('__proto__')); 16 Expect.isTrue(m1.containsKey('__proto__'));
17 Expect.isFalse(m1.containsKey('toString')); 17 Expect.isFalse(m1.containsKey('toString'));
18 Expect.isTrue(m1.containsValue(499)); 18 Expect.isTrue(m1.containsValue(499));
19 Expect.isFalse(m1.containsValue(null)); 19 Expect.isFalse(m1.containsValue(null));
20 var seenKeys = []; 20 var seenKeys = [];
21 var seenValues = []; 21 var seenValues = [];
22 m1.forEach((key, value) { 22 m1.forEach((key, value) {
23 seenKeys.add(key); 23 seenKeys.add(key);
24 seenValues.add(value); 24 seenValues.add(value);
25 }); 25 });
26 Expect.listEquals(['__proto__'], seenKeys); 26 Expect.listEquals(['__proto__'], seenKeys);
27 Expect.listEquals([499], seenValues); 27 Expect.listEquals([499], seenValues);
28 Expect.isFalse(m1.isEmpty()); 28 Expect.isFalse(m1.isEmpty());
29 Expect.equals(1, m1.length); 29 Expect.equals(1, m1.length);
30 Expect.throws(() => m1.remove('__proto__'), isIllegalAccessException); 30 Expect.throws(() => m1.remove('__proto__'), isStateError);
31 Expect.throws(() => m1.remove('b'), isIllegalAccessException); 31 Expect.throws(() => m1.remove('b'), isStateError);
32 Expect.throws(() => m1.clear(), isIllegalAccessException); 32 Expect.throws(() => m1.clear(), isStateError);
33 Expect.throws(() => m1['b'] = 42, isIllegalAccessException); 33 Expect.throws(() => m1['b'] = 42, isStateError);
34 Expect.throws(() => m1['__proto__'] = 499, isIllegalAccessException); 34 Expect.throws(() => m1['__proto__'] = 499, isStateError);
35 Expect.throws(() => m1.putIfAbsent('__proto__', () => 499), 35 Expect.throws(() => m1.putIfAbsent('__proto__', () => 499),
floitsch 2012/10/23 12:50:32 one line, ditto below.
Lasse Reichstein Nielsen 2012/10/24 12:32:15 fixed where possible. Some are still too long. Co
36 isIllegalAccessException); 36 isStateError);
37 Expect.throws(() => m1.putIfAbsent('z', () => 499), 37 Expect.throws(() => m1.putIfAbsent('z', () => 499),
38 isIllegalAccessException); 38 isStateError);
39 39
40 Expect.equals(499, m2['a']); 40 Expect.equals(499, m2['a']);
41 Expect.equals(42, m2['b']); 41 Expect.equals(42, m2['b']);
42 Expect.equals(null, m2['c']); 42 Expect.equals(null, m2['c']);
43 Expect.equals(null, m2['__proto__']); 43 Expect.equals(null, m2['__proto__']);
44 Expect.listEquals(['a', 'b'], m2.getKeys()); 44 Expect.listEquals(['a', 'b'], m2.getKeys());
45 Expect.listEquals([499, 42], m2.getValues()); 45 Expect.listEquals([499, 42], m2.getValues());
46 Expect.isTrue(m2.containsKey('a')); 46 Expect.isTrue(m2.containsKey('a'));
47 Expect.isTrue(m2.containsKey('b')); 47 Expect.isTrue(m2.containsKey('b'));
48 Expect.isFalse(m2.containsKey('toString')); 48 Expect.isFalse(m2.containsKey('toString'));
49 Expect.isFalse(m2.containsKey('__proto__')); 49 Expect.isFalse(m2.containsKey('__proto__'));
50 Expect.isTrue(m2.containsValue(499)); 50 Expect.isTrue(m2.containsValue(499));
51 Expect.isTrue(m2.containsValue(42)); 51 Expect.isTrue(m2.containsValue(42));
52 Expect.isFalse(m2.containsValue(null)); 52 Expect.isFalse(m2.containsValue(null));
53 seenKeys = []; 53 seenKeys = [];
54 seenValues = []; 54 seenValues = [];
55 m2.forEach((key, value) { 55 m2.forEach((key, value) {
56 seenKeys.add(key); 56 seenKeys.add(key);
57 seenValues.add(value); 57 seenValues.add(value);
58 }); 58 });
59 Expect.listEquals(['a', 'b'], seenKeys); 59 Expect.listEquals(['a', 'b'], seenKeys);
60 Expect.listEquals([499, 42], seenValues); 60 Expect.listEquals([499, 42], seenValues);
61 Expect.isFalse(m2.isEmpty()); 61 Expect.isFalse(m2.isEmpty());
62 Expect.equals(2, m2.length); 62 Expect.equals(2, m2.length);
63 Expect.throws(() => m2.remove('a'), isIllegalAccessException); 63 Expect.throws(() => m2.remove('a'), isStateError);
64 Expect.throws(() => m2.remove('b'), isIllegalAccessException); 64 Expect.throws(() => m2.remove('b'), isStateError);
65 Expect.throws(() => m2.remove('__proto__'), isIllegalAccessException); 65 Expect.throws(() => m2.remove('__proto__'), isStateError);
66 Expect.throws(() => m2.clear(), isIllegalAccessException); 66 Expect.throws(() => m2.clear(), isStateError);
67 Expect.throws(() => m2['a'] = 499, isIllegalAccessException); 67 Expect.throws(() => m2['a'] = 499, isStateError);
68 Expect.throws(() => m2['b'] = 42, isIllegalAccessException); 68 Expect.throws(() => m2['b'] = 42, isStateError);
69 Expect.throws(() => m2['__proto__'] = 499, isIllegalAccessException); 69 Expect.throws(() => m2['__proto__'] = 499, isStateError);
70 Expect.throws(() => m2.putIfAbsent('a', () => 499), 70 Expect.throws(() => m2.putIfAbsent('a', () => 499),
71 isIllegalAccessException); 71 isStateError);
72 Expect.throws(() => m2.putIfAbsent('__proto__', () => 499), 72 Expect.throws(() => m2.putIfAbsent('__proto__', () => 499),
73 isIllegalAccessException); 73 isStateError);
74 Expect.throws(() => m2['a'] = 499, isIllegalAccessException); 74 Expect.throws(() => m2['a'] = 499, isStateError);
75 75
76 Expect.isTrue(m1 === m3); 76 Expect.isTrue(m1 === m3);
77 } 77 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698