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

Side by Side Diff: tests/language/src/ConstructorNamedArgumentsTest.dart

Issue 9477013: Update ConstructorNamedArgumentTest to use the 'runtime-error' directive (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 9 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 | « tests/language/language.status ('k') | tools/testing/dart/multitest.dart » ('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) 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 // Dart test program for default constructors. 4 // Dart test program for default constructors.
5 5
6 String message; 6 String message;
7 7
8 foo() { 8 foo() {
9 message += 'foo'; 9 message += 'foo';
10 return 1; 10 return 1;
11 } 11 }
12 12
13 bar() { 13 bar() {
14 message += 'bar'; 14 message += 'bar';
15 return 2; 15 return 2;
16 } 16 }
17 17
18 class X { 18 class X {
19 var i; 19 var i;
20 var j; 20 var j;
21 X([a = 'defa', b = 'defb']) : this.i = a, this.j = b; 21 X([a = 'defa', b = 'defb']) : this.i = a, this.j = b;
22 X.foo() : this(b: 1, a: 2); 22 X.foo() : this(b: 1, a: 2);
23 X.bar() : this( 23 X.bar() : this(
24 1, /// 01: compile-time error 24 1, /// 01: runtime error
25 a: 2); 25 a: 2);
26 X.foobar() : this(1
27 , a: 2 /// 02: runtime error
28 );
26 X.baz() : this(a: 1, b: 2); 29 X.baz() : this(a: 1, b: 2);
27 X.qux() : this(1, 2); 30 X.qux() : this(1, 2);
28 X.hest() : this(); 31 X.hest() : this();
29 X.fisk() : this(b: bar(), a: foo()); 32 X.fisk() : this(b: bar(), a: foo());
30 X.naebdyr() : this(a: foo(), b: bar()); 33 X.naebdyr() : this(a: foo(), b: bar());
31 } 34 }
32 35
33 test(x, a, b) { 36 test(x, a, b) {
34 Expect.equals(x.i, a); 37 Expect.equals(x.i, a);
35 Expect.equals(x.j, b); 38 Expect.equals(x.j, b);
36 } 39 }
37 40
38 main() { 41 main() {
39 test(new X.foo(), 2, 1); 42 test(new X.foo(), 2, 1);
40 test(new X.bar(), 2, 'defb'); 43 test(new X.bar(), 2, 'defb');
41 test(new X.baz(), 1, 2); 44 test(new X.baz(), 1, 2);
42 test(new X.qux(), 1, 2); 45 test(new X.qux(), 1, 2);
43 test(new X.hest(), 'defa', 'defb'); 46 test(new X.hest(), 'defa', 'defb');
44 47
45 message = ''; 48 message = '';
46 new X.fisk(); 49 new X.fisk();
47 Expect.equals('barfoo', message); 50 Expect.equals('barfoo', message);
48 51
49 message = ''; 52 message = '';
50 new X.naebdyr(); 53 new X.naebdyr();
51 Expect.equals('foobar', message); 54 Expect.equals('foobar', message);
52 } 55 }
OLDNEW
« no previous file with comments | « tests/language/language.status ('k') | tools/testing/dart/multitest.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698