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

Side by Side Diff: runtime/observatory/test/debugging_test.dart

Issue 1076003004: Fix all Observatory warnings/errors. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 5 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 | Annotate | Revision Log
« no previous file with comments | « runtime/observatory/test/coverage_test.dart ('k') | runtime/observatory/test/eval_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
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 --checked 4 // VMOptions=--compile-all --error_on_bad_type --error_on_bad_override --checked
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 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
49 }); 49 });
50 isolate.resume(); 50 isolate.resume();
51 return completer.future; 51 return completer.future;
52 }, 52 },
53 53
54 // Add breakpoint 54 // Add breakpoint
55 (Isolate isolate) { 55 (Isolate isolate) {
56 return isolate.rootLib.load().then((_) { 56 return isolate.rootLib.load().then((_) {
57 // Set up a listener to wait for breakpoint events. 57 // Set up a listener to wait for breakpoint events.
58 Completer completer = new Completer(); 58 Completer completer = new Completer();
59 List events = [];
60 var subscription; 59 var subscription;
61 subscription = isolate.vm.events.stream.listen((ServiceEvent event) { 60 subscription = isolate.vm.events.stream.listen((ServiceEvent event) {
62 if (event.eventType == ServiceEvent.kPauseBreakpoint) { 61 if (event.eventType == ServiceEvent.kPauseBreakpoint) {
63 print('Breakpoint reached'); 62 print('Breakpoint reached');
64 subscription.cancel(); 63 subscription.cancel();
65 completer.complete(); 64 completer.complete();
66 } 65 }
67 }); 66 });
68 67
69 // Add the breakpoint. 68 // Add the breakpoint.
(...skipping 17 matching lines...) Expand all
87 expect(stack['frames'].length, greaterThanOrEqualTo(1)); 86 expect(stack['frames'].length, greaterThanOrEqualTo(1));
88 expect(stack['frames'][0]['function'].name, equals('testFunction')); 87 expect(stack['frames'][0]['function'].name, equals('testFunction'));
89 expect(stack['frames'][0]['tokenPos'], equals(58)); 88 expect(stack['frames'][0]['tokenPos'], equals(58));
90 }); 89 });
91 }, 90 },
92 91
93 // Stepping 92 // Stepping
94 (Isolate isolate) { 93 (Isolate isolate) {
95 // Set up a listener to wait for breakpoint events. 94 // Set up a listener to wait for breakpoint events.
96 Completer completer = new Completer(); 95 Completer completer = new Completer();
97 List events = [];
98 var subscription; 96 var subscription;
99 subscription = isolate.vm.events.stream.listen((ServiceEvent event) { 97 subscription = isolate.vm.events.stream.listen((ServiceEvent event) {
100 if (event.eventType == ServiceEvent.kPauseBreakpoint) { 98 if (event.eventType == ServiceEvent.kPauseBreakpoint) {
101 print('Breakpoint reached'); 99 print('Breakpoint reached');
102 subscription.cancel(); 100 subscription.cancel();
103 completer.complete(); 101 completer.complete();
104 } 102 }
105 }); 103 });
106 104
107 return isolate.stepInto().then((isolate) { 105 return isolate.stepInto().then((isolate) {
108 return completer.future; // Wait for breakpoint events. 106 return completer.future; // Wait for breakpoint events.
109 }); 107 });
110 }, 108 },
111 109
112 // Get the stack trace again. Our position has updated. 110 // Get the stack trace again. Our position has updated.
113 (Isolate isolate) { 111 (Isolate isolate) {
114 return isolate.getStack().then((ServiceMap stack) { 112 return isolate.getStack().then((ServiceMap stack) {
115 expect(stack.type, equals('Stack')); 113 expect(stack.type, equals('Stack'));
116 expect(stack['frames'].length, greaterThanOrEqualTo(2)); 114 expect(stack['frames'].length, greaterThanOrEqualTo(2));
117 expect(stack['frames'][0]['function'].name, equals('testFunction')); 115 expect(stack['frames'][0]['function'].name, equals('testFunction'));
118 expect(stack['frames'][0]['tokenPos'], equals(60)); 116 expect(stack['frames'][0]['tokenPos'], equals(60));
119 }); 117 });
120 }, 118 },
121 119
122 // Remove breakpoint 120 // Remove breakpoint
123 (Isolate isolate) { 121 (Isolate isolate) {
124 // Set up a listener to wait for breakpoint events. 122 // Set up a listener to wait for breakpoint events.
125 Completer completer = new Completer(); 123 Completer completer = new Completer();
126 List events = [];
127 var subscription; 124 var subscription;
128 subscription = isolate.vm.events.stream.listen((ServiceEvent event) { 125 subscription = isolate.vm.events.stream.listen((ServiceEvent event) {
129 if (event.eventType == ServiceEvent.kBreakpointRemoved) { 126 if (event.eventType == ServiceEvent.kBreakpointRemoved) {
130 print('Breakpoint removed'); 127 print('Breakpoint removed');
131 expect(isolate.breakpoints.length, equals(0)); 128 expect(isolate.breakpoints.length, equals(0));
132 subscription.cancel(); 129 subscription.cancel();
133 completer.complete(); 130 completer.complete();
134 } 131 }
135 }); 132 });
136 133
(...skipping 15 matching lines...) Expand all
152 } 149 }
153 }); 150 });
154 isolate.resume(); 151 isolate.resume();
155 return completer.future; 152 return completer.future;
156 }, 153 },
157 154
158 // Add breakpoint at function entry 155 // Add breakpoint at function entry
159 (Isolate isolate) { 156 (Isolate isolate) {
160 // Set up a listener to wait for breakpoint events. 157 // Set up a listener to wait for breakpoint events.
161 Completer completer = new Completer(); 158 Completer completer = new Completer();
162 List events = [];
163 var subscription; 159 var subscription;
164 subscription = isolate.vm.events.stream.listen((ServiceEvent event) { 160 subscription = isolate.vm.events.stream.listen((ServiceEvent event) {
165 if (event.eventType == ServiceEvent.kPauseBreakpoint) { 161 if (event.eventType == ServiceEvent.kPauseBreakpoint) {
166 print('Breakpoint reached'); 162 print('Breakpoint reached');
167 subscription.cancel(); 163 subscription.cancel();
168 completer.complete(); 164 completer.complete();
169 } 165 }
170 }); 166 });
171 167
172 // Find a specific function. 168 // Find a specific function.
173 ServiceFunction function = isolate.rootLib.functions.firstWhere( 169 ServiceFunction function = isolate.rootLib.functions.firstWhere(
174 (f) => f.name == 'helper'); 170 (f) => f.name == 'helper');
175 expect(function, isNotNull); 171 expect(function, isNotNull);
176 172
177 // Add the breakpoint at function entry 173 // Add the breakpoint at function entry
178 return isolate.addBreakpointAtEntry(function).then((result) { 174 return isolate.addBreakpointAtEntry(function).then((result) {
179 expect(result is Breakpoint, isTrue); 175 expect(result is Breakpoint, isTrue);
180 Breakpoint bpt = result; 176 Breakpoint bpt = result;
181 expect(bpt.type, equals('Breakpoint')); 177 expect(bpt.type, equals('Breakpoint'));
182 expect(bpt.script.name, equals('debugging_test.dart')); 178 expect(bpt.script.name, equals('debugging_test.dart'));
183 expect(bpt.tokenPos, equals(29)); 179 expect(bpt.tokenPos, equals(29));
184 expect(isolate.breakpoints.length, equals(1)); 180 expect(isolate.breakpoints.length, equals(1));
185 return completer.future; // Wait for breakpoint events. 181 return completer.future; // Wait for breakpoint events.
186 }); 182 });
187 }, 183 },
188 184
189 ]; 185 ];
190 186
191 main(args) => runIsolateTests(args, tests, testeeConcurrent: testFunction); 187 main(args) => runIsolateTests(args, tests, testeeConcurrent: testFunction);
OLDNEW
« no previous file with comments | « runtime/observatory/test/coverage_test.dart ('k') | runtime/observatory/test/eval_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698