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

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

Issue 1237203002: Insert debug step check at the beginning of a function. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 5 years, 5 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
OLDNEW
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=--compile_all --error_on_bad_type --error_on_bad_override 4 // VMOptions=--compile_all --error_on_bad_type --error_on_bad_override
5 5
6 import 'package:observatory/service_io.dart'; 6 import 'package:observatory/service_io.dart';
7 import 'package:unittest/unittest.dart'; 7 import 'package:unittest/unittest.dart';
8 import 'test_helper.dart'; 8 import 'test_helper.dart';
9 import 'dart:async'; 9 import 'dart:async';
10 10
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 ServiceFunction function = isolate.rootLibrary.functions.firstWhere( 180 ServiceFunction function = isolate.rootLibrary.functions.firstWhere(
181 (f) => f.name == 'periodicTask'); 181 (f) => f.name == 'periodicTask');
182 expect(function, isNotNull); 182 expect(function, isNotNull);
183 183
184 // Add the breakpoint at function entry 184 // Add the breakpoint at function entry
185 var result = await isolate.addBreakpointAtEntry(function); 185 var result = await isolate.addBreakpointAtEntry(function);
186 expect(result is Breakpoint, isTrue); 186 expect(result is Breakpoint, isTrue);
187 Breakpoint bpt = result; 187 Breakpoint bpt = result;
188 expect(bpt.type, equals('Breakpoint')); 188 expect(bpt.type, equals('Breakpoint'));
189 expect(bpt.location.script.name, equals('debugging_test.dart')); 189 expect(bpt.location.script.name, equals('debugging_test.dart'));
190 expect(bpt.location.script.tokenToLine(bpt.location.tokenPos), equals(14)); 190 expect(bpt.location.script.tokenToLine(bpt.location.tokenPos), equals(13));
191 expect(isolate.breakpoints.length, equals(1)); 191 expect(isolate.breakpoints.length, equals(1));
192 192
193 await completer.future; // Wait for breakpoint events. 193 await completer.future; // Wait for breakpoint events.
194 }, 194 },
195 195
196 // We are now at line 14. 196 // We are now at line 13.
197 (Isolate isolate) async { 197 (Isolate isolate) async {
198 ServiceMap stack = await isolate.getStack(); 198 ServiceMap stack = await isolate.getStack();
199 expect(stack.type, equals('Stack')); 199 expect(stack.type, equals('Stack'));
200 expect(stack['frames'].length, greaterThanOrEqualTo(1)); 200 expect(stack['frames'].length, greaterThanOrEqualTo(1));
201 201
202 Script script = stack['frames'][0].location.script; 202 Script script = stack['frames'][0].location.script;
203 expect(script.name,endsWith('debugging_test.dart')); 203 expect(script.name,endsWith('debugging_test.dart'));
204 expect(script.tokenToLine(stack['frames'][0].location.tokenPos), equals(14)); 204 expect(script.tokenToLine(stack['frames'][0].location.tokenPos), equals(13));
205 }, 205 },
206 206
207 ]; 207 ];
208 208
209 main(args) => runIsolateTests(args, tests, testeeBefore: startTimer); 209 main(args) => runIsolateTests(args, tests, testeeBefore: startTimer);
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698