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 // VMOptions=--error_on_bad_type --error_on_bad_override --verbose_debug | 4 // VMOptions=--error_on_bad_type --error_on_bad_override --verbose_debug |
5 | 5 |
6 import 'service_test_common.dart'; | 6 import 'service_test_common.dart'; |
7 import 'dart:async'; | 7 import 'dart:async'; |
8 import 'test_helper.dart'; | 8 import 'test_helper.dart'; |
9 import 'dart:developer'; | 9 import 'dart:developer'; |
10 | 10 |
11 const int LINE_A = 19; | 11 const int LINE_A = 19; |
12 const int LINE_B = 22; | 12 const int LINE_B = 22; |
13 const int LINE_C = 23; | 13 const int LINE_C = 23; |
14 const int LINE_D = 25; | 14 const int LINE_D = 25; |
15 const int LINE_E = 26; | 15 const int LINE_E = 26; |
16 | 16 |
17 testMain() async { | 17 testMain() async { |
18 debugger(); | 18 debugger(); |
19 Future future1 = new Future.value(); // LINE_A. | 19 Future future1 = new Future.value(); // LINE_A. |
20 Future future2 = new Future.value(); | 20 Future future2 = new Future.value(); |
21 | 21 |
22 await future1; // LINE_B. | 22 await future1; // LINE_B. |
23 await future2; // LINE_C. | 23 await future2; // LINE_C. |
24 | 24 |
25 print('foo1'); // LINE_D. | 25 print('foo1'); // LINE_D. |
26 print('foo2'); // LINE_E. | 26 print('foo2'); // LINE_E. |
27 } | 27 } |
28 | 28 |
29 var tests = [ | 29 var tests = [ |
30 hasStoppedAtBreakpoint, | 30 hasStoppedAtBreakpoint, |
31 stoppedAtLine(LINE_A), | 31 stoppedAtLine(LINE_A), |
32 smartNext, | 32 smartNext, |
33 hasStoppedAtBreakpoint, | 33 hasStoppedAtBreakpoint, |
34 smartNext, | 34 smartNext, |
35 hasStoppedAtBreakpoint, | 35 hasStoppedAtBreakpoint, |
36 stoppedAtLine(LINE_B), | 36 stoppedAtLine(LINE_B), |
37 smartNext, | 37 smartNext, |
38 hasStoppedAtBreakpoint, | 38 hasStoppedAtBreakpoint, |
39 stoppedAtLine(LINE_C), | 39 stoppedAtLine(LINE_C), |
40 smartNext, | 40 smartNext, |
41 hasStoppedAtBreakpoint, | 41 hasStoppedAtBreakpoint, |
42 stoppedAtLine(LINE_D), | 42 stoppedAtLine(LINE_D), |
43 resumeIsolate, | 43 resumeIsolate, |
44 ]; | 44 ]; |
45 | 45 |
46 main(args) => runIsolateTests(args, tests, testeeConcurrent: testMain); | 46 main(args) => runIsolateTests(args, tests, testeeConcurrent: testMain); |
OLD | NEW |