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

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

Issue 16953004: Add test for checked setters of generic types. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 7 years, 6 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
« no previous file with comments | « no previous file | tests/language/language_dart2js.status » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, 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 // Test that implicit setters in checked mode do a type check. 5 // Test that implicit setters in checked mode do a type check generic types.
6 6
7 import "package:expect/expect.dart"; 7 import "package:expect/expect.dart";
8 8
9 class A { 9 class A {
10 C c; 10 C<int> c;
11 } 11 }
12 12
13 class B extends A { 13 class B extends A {
14 } 14 }
15 15
16 class C { 16 class C<T> {
17 } 17 }
18 18
19 var array = [new B()]; 19 var array = [new B()];
20 20
21 main() { 21 main() {
22 array[0].c = new C(); 22 array[0].c = new C();
23 bool inCheckedMode = false; 23 bool inCheckedMode = false;
24 try { 24 try {
25 String a = 42; 25 String a = 42;
26 } catch (e) { 26 } catch (e) {
27 inCheckedMode = true; 27 inCheckedMode = true;
28 } 28 }
29 if (inCheckedMode) { 29 if (inCheckedMode) {
30 Expect.throws(() => array[0].c = new B(), (e) => e is TypeError); 30 Expect.throws(() => array[0].c = new C<bool>(), (e) => e is TypeError);
31 } 31 }
32 } 32 }
OLDNEW
« no previous file with comments | « no previous file | tests/language/language_dart2js.status » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698