OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 constructors and initializers. | 4 // Dart test program for constructors and initializers. |
5 | 5 |
6 import "package:expect/expect.dart"; | |
7 | |
8 // Expect the initializer expressions E(i) to be evaluated | 6 // Expect the initializer expressions E(i) to be evaluated |
9 // in the order 1, 2, 3, ... | 7 // in the order 1, 2, 3, ... |
10 // Each expression must be evaluated exactly once. | 8 // Each expression must be evaluated exactly once. |
11 | 9 |
12 String trace = ""; | 10 String trace = ""; |
13 | 11 |
14 int E(int i) { | 12 int E(int i) { |
15 trace = trace.concat("$i-"); | 13 trace = trace.concat("$i-"); |
16 return i; | 14 return i; |
17 } | 15 } |
(...skipping 13 matching lines...) Expand all Loading... |
31 // Implicit super call to A's body happens here. | 29 // Implicit super call to A's body happens here. |
32 Expect.equals(4, b1); | 30 Expect.equals(4, b1); |
33 E(6); | 31 E(6); |
34 } | 32 } |
35 } | 33 } |
36 | 34 |
37 main() { | 35 main() { |
38 var b = new B(0); | 36 var b = new B(0); |
39 Expect.equals("1-2-3-4-5-6-", trace); | 37 Expect.equals("1-2-3-4-5-6-", trace); |
40 } | 38 } |
OLD | NEW |