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 'test_helper.dart'; | 6 import 'test_helper.dart'; |
7 import 'dart:developer'; | 7 import 'dart:developer'; |
8 import 'service_test_common.dart'; | 8 import 'service_test_common.dart'; |
9 | 9 |
10 const int LINE_A = 20; | 10 const int LINE_A = 20; |
11 | 11 |
12 // :async_op will not be captured in this function because it never needs to | 12 // :async_op will not be captured in this function because it never needs to |
13 // reschedule it. | 13 // reschedule it. |
14 asyncWithoutAwait() async { | 14 asyncWithoutAwait() async { |
15 print("asyncWithoutAwait"); | 15 print("asyncWithoutAwait"); |
16 } | 16 } |
17 | 17 |
18 testMain() { | 18 testMain() { |
19 debugger(); | 19 debugger(); |
20 asyncWithoutAwait(); // Line A. | 20 asyncWithoutAwait(); // Line A. |
21 } | 21 } |
22 | 22 |
23 var tests = [ | 23 var tests = [ |
24 hasStoppedAtBreakpoint, | 24 hasStoppedAtBreakpoint, |
25 stoppedAtLine(LINE_A), | 25 stoppedAtLine(LINE_A), |
26 (isolate) => isolate.stepInto(), | 26 (isolate) => isolate.stepInto(), |
27 hasStoppedAtBreakpoint, | 27 hasStoppedAtBreakpoint, |
28 (isolate) => isolate.getStack(), // Should not crash. | 28 (isolate) => isolate.getStack(), // Should not crash. |
29 // TODO(rmacnak): stoppedAtLine(12) | 29 // TODO(rmacnak): stoppedAtLine(12) |
30 // This doesn't happen because asyncWithoutAwait is marked undebuggable. | 30 // This doesn't happen because asyncWithoutAwait is marked undebuggable. |
31 // Probably needs to change to support async-step-into. | 31 // Probably needs to change to support async-step-into. |
32 resumeIsolate, | 32 resumeIsolate, |
33 ]; | 33 ]; |
34 | 34 |
35 main(args) => runIsolateTests(args, tests, testeeConcurrent: testMain); | 35 main(args) => runIsolateTests(args, tests, testeeConcurrent: testMain); |
OLD | NEW |