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

Side by Side Diff: runtime/observatory/tests/service/async_star_step_out_test.dart

Issue 2777093006: Implement debugger support for async step-out (Closed)
Patch Set: rmacnak review Created 3 years, 8 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
« no previous file with comments | « no previous file | runtime/observatory/tests/service/async_step_out_test.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file
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.
4 // VMOptions=--error_on_bad_type --error_on_bad_override --verbose_debug
5
6 import 'dart:developer';
7 import 'package:observatory/models.dart' as M;
8 import 'package:observatory/service_io.dart';
9 import 'package:unittest/unittest.dart';
10 import 'service_test_common.dart';
11 import 'test_helper.dart';
12
13 const LINE_A = 24;
14 const LINE_B = 25;
15 const LINE_C = 29;
16 const LINE_D = 32;
17 const LINE_E = 39;
18 const LINE_F = 40;
19 const LINE_G = 41;
20 const LINE_H = 30;
21 const LINE_I = 34;
22
23 foobar() async* {
24 yield 1; // LINE_A.
25 yield 2; // LINE_B.
26 }
27
28 helper() async {
29 print('helper'); // LINE_C.
30 await for (var i in foobar()) { // LINE_H.
31 debugger();
32 print('loop'); // LINE_D.
33 }
34 return null; // LINE_I.
35 }
36
37 testMain() {
38 debugger();
39 print('mmmmm'); // LINE_E.
40 helper(); // LINE_F.
41 print('z'); // LINE_G.
42 }
43
44 var tests = [
45 hasStoppedAtBreakpoint,
46 stoppedAtLine(LINE_E),
47 stepOver, // print.
48 hasStoppedAtBreakpoint,
49 stoppedAtLine(LINE_F),
50 stepInto,
51 hasStoppedAtBreakpoint,
52 stoppedAtLine(LINE_C),
53 stepOver, // print.
54 hasStoppedAtBreakpoint,
55 stepInto,
56 hasStoppedAtBreakpoint,
57 stoppedAtLine(LINE_A),
58 stepOut, // step out of generator.
59 hasStoppedAtBreakpoint,
60 stoppedAtLine(LINE_H), // await for.
61 stepInto,
62 hasStoppedAtBreakpoint, // debugger().
63 stepInto,
64 hasStoppedAtBreakpoint,
65 stoppedAtLine(LINE_D), // print.
66 stepInto,
67 hasStoppedAtBreakpoint, // await for.
68 stepInto,
69 hasStoppedAtBreakpoint, // back in generator.
70 stoppedAtLine(LINE_B),
71 stepOut, // step out of generator.
72 hasStoppedAtBreakpoint,
73 stoppedAtLine(LINE_H), // await for.
74 stepInto,
75 hasStoppedAtBreakpoint, // debugger().
76 stepInto,
77 hasStoppedAtBreakpoint,
78 stoppedAtLine(LINE_D), // print.
79 stepInto,
80 hasStoppedAtBreakpoint,
81 stoppedAtLine(LINE_H), // await for.
82 stepInto,
83 hasStoppedAtBreakpoint,
84 stepOut, // step out of generator.
85 hasStoppedAtBreakpoint,
86 stoppedAtLine(LINE_I), // return null.
87 ];
88
89 main(args) =>
90 runIsolateTestsSynchronous(args, tests, testeeConcurrent: testMain);
OLDNEW
« no previous file with comments | « no previous file | runtime/observatory/tests/service/async_step_out_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698