OLD | NEW |
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, 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 |
| 5 // TODO(jakemac): swap this to @TestOn('pub-serve') once |
| 6 // https://github.com/dart-lang/test/issues/388 is completed. |
| 7 @TestOn('!js') |
4 library initialize.initializer_super_test; | 8 library initialize.initializer_super_test; |
5 | 9 |
6 import 'package:initialize/src/initialize_tracker.dart'; | 10 import 'package:initialize/src/initialize_tracker.dart'; |
7 import 'package:initialize/initialize.dart'; | 11 import 'package:initialize/initialize.dart'; |
8 import 'package:unittest/unittest.dart'; | 12 import 'package:test/test.dart'; |
9 import 'package:unittest/compact_vm_config.dart'; | |
10 | 13 |
11 main() { | 14 main() { |
12 useCompactVMConfiguration(); | |
13 | |
14 // Run all initializers. | 15 // Run all initializers. |
15 run().then((_) { | 16 return run().then((_) { |
16 test('annotations are seen in post-order with superclasses first', () { | 17 test('annotations are seen in post-order with superclasses first', () { |
17 var expectedNames = [A, C, B, E, D,]; | 18 var expectedNames = [A, C, B, E, D,]; |
18 expect(InitializeTracker.seen, expectedNames); | 19 expect(InitializeTracker.seen, expectedNames); |
19 }); | 20 }); |
20 }); | 21 }); |
21 } | 22 } |
22 | 23 |
23 @initializeTracker | 24 @initializeTracker |
24 class D extends E {} | 25 class D extends E {} |
25 | 26 |
26 @initializeTracker | 27 @initializeTracker |
27 class E extends B {} | 28 class E extends B {} |
28 | 29 |
29 @initializeTracker | 30 @initializeTracker |
30 class B extends C {} | 31 class B extends C {} |
31 | 32 |
32 @initializeTracker | 33 @initializeTracker |
33 class C extends A {} | 34 class C extends A {} |
34 | 35 |
35 @initializeTracker | 36 @initializeTracker |
36 class A {} | 37 class A {} |
OLD | NEW |