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=--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 | 9 |
10 import 'dart:math' as math; | 10 import 'dart:math' as math; |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 expect(math.sqrt(4), equals(2)); | 72 expect(math.sqrt(4), equals(2)); |
73 Library rootLib = await isolate.rootLibrary.load(); | 73 Library rootLib = await isolate.rootLibrary.load(); |
74 ServiceFunction function = | 74 ServiceFunction function = |
75 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); | 75 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); |
76 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); | 76 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); |
77 print("Breakpoint: $bpt"); | 77 print("Breakpoint: $bpt"); |
78 expect(bpt is Breakpoint, isTrue); // I.e, not null. | 78 expect(bpt is Breakpoint, isTrue); // I.e, not null. |
79 | 79 |
80 bool hitBreakpoint = false; | 80 bool hitBreakpoint = false; |
81 var sub; | 81 var sub; |
82 sub = isolate.vm.debugEvents.listen((ServiceEvent event) async { | 82 sub = isolate.vm.events.stream.listen((ServiceEvent event) async { |
83 print("Event $event"); | 83 print("Event $event"); |
84 if (event.eventType == ServiceEvent.kPauseBreakpoint) { | 84 if (event.eventType == ServiceEvent.kPauseBreakpoint) { |
85 var frameNumber = 1, r; | 85 var frameNumber = 1, r; |
86 r = await isolate.evalFrame(frameNumber, '123'); /// instance: ok | 86 r = await isolate.evalFrame(frameNumber, '123'); /// instance: ok |
87 expect(r.valueAsString, equals('123')); /// instance: continued | 87 expect(r.valueAsString, equals('123')); /// instance: continued |
88 r = await isolate.evalFrame(frameNumber, 'this'); /// scope: ok | 88 r = await isolate.evalFrame(frameNumber, 'this'); /// scope: ok |
89 expect(r.clazz.name, equals('C')); /// scope: continued | 89 expect(r.clazz.name, equals('C')); /// scope: continued |
90 r = await isolate.evalFrame(frameNumber, 'instVar'); /// instance: contin
ued | 90 r = await isolate.evalFrame(frameNumber, 'instVar'); /// instance: contin
ued |
91 expect(r.valueAsString, equals('1')); /// instance: continued | 91 expect(r.valueAsString, equals('1')); /// instance: continued |
92 r = await isolate.evalFrame(frameNumber, 'classVar'); /// instance: contin
ued | 92 r = await isolate.evalFrame(frameNumber, 'classVar'); /// instance: contin
ued |
(...skipping 27 matching lines...) Expand all Loading... |
120 testMethod2(Isolate isolate) async { | 120 testMethod2(Isolate isolate) async { |
121 Library rootLib = await isolate.rootLibrary.load(); | 121 Library rootLib = await isolate.rootLibrary.load(); |
122 ServiceFunction function = | 122 ServiceFunction function = |
123 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); | 123 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); |
124 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); | 124 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); |
125 print("Breakpoint: $bpt"); | 125 print("Breakpoint: $bpt"); |
126 expect(bpt is Breakpoint, isTrue); // I.e, not null. | 126 expect(bpt is Breakpoint, isTrue); // I.e, not null. |
127 | 127 |
128 bool hitBreakpoint = false; | 128 bool hitBreakpoint = false; |
129 var sub; | 129 var sub; |
130 sub = isolate.vm.debugEvents.listen((ServiceEvent event) async { | 130 sub = isolate.vm.events.stream.listen((ServiceEvent event) async { |
131 print("Event $event"); | 131 print("Event $event"); |
132 if (event.eventType == ServiceEvent.kPauseBreakpoint) { | 132 if (event.eventType == ServiceEvent.kPauseBreakpoint) { |
133 var frameNumber = 1, r; | 133 var frameNumber = 1, r; |
134 r = await isolate.evalFrame(frameNumber, '123'); | 134 r = await isolate.evalFrame(frameNumber, '123'); |
135 expect(r.valueAsString, equals('123')); | 135 expect(r.valueAsString, equals('123')); |
136 r = await isolate.evalFrame(frameNumber, 'this'); | 136 r = await isolate.evalFrame(frameNumber, 'this'); |
137 expect(r is DartError, isTrue); | 137 expect(r is DartError, isTrue); |
138 r = await isolate.evalFrame(frameNumber, 'instVar'); | 138 r = await isolate.evalFrame(frameNumber, 'instVar'); |
139 expect(r is DartError, isTrue); | 139 expect(r is DartError, isTrue); |
140 r = await isolate.evalFrame(frameNumber, 'classVar'); | 140 r = await isolate.evalFrame(frameNumber, 'classVar'); |
(...skipping 27 matching lines...) Expand all Loading... |
168 testMethod3(Isolate isolate) async { | 168 testMethod3(Isolate isolate) async { |
169 Library rootLib = await isolate.rootLibrary.load(); | 169 Library rootLib = await isolate.rootLibrary.load(); |
170 ServiceFunction function = | 170 ServiceFunction function = |
171 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); | 171 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); |
172 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); | 172 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); |
173 print("Breakpoint: $bpt"); | 173 print("Breakpoint: $bpt"); |
174 expect(bpt is Breakpoint, isTrue); // I.e, not null. | 174 expect(bpt is Breakpoint, isTrue); // I.e, not null. |
175 | 175 |
176 bool hitBreakpoint = false; | 176 bool hitBreakpoint = false; |
177 var sub; | 177 var sub; |
178 sub = isolate.vm.debugEvents.listen((ServiceEvent event) async { | 178 sub = isolate.vm.events.stream.listen((ServiceEvent event) async { |
179 print("Event $event"); | 179 print("Event $event"); |
180 if (event.eventType == ServiceEvent.kPauseBreakpoint) { | 180 if (event.eventType == ServiceEvent.kPauseBreakpoint) { |
181 var frameNumber = 1, r; | 181 var frameNumber = 1, r; |
182 r = await isolate.evalFrame(frameNumber, '123'); | 182 r = await isolate.evalFrame(frameNumber, '123'); |
183 expect(r.valueAsString, equals('123')); | 183 expect(r.valueAsString, equals('123')); |
184 r = await isolate.evalFrame(frameNumber, 'this'); | 184 r = await isolate.evalFrame(frameNumber, 'this'); |
185 expect(r.clazz.name, equals('C')); | 185 expect(r.clazz.name, equals('C')); |
186 r = await isolate.evalFrame(frameNumber, 'instVar'); | 186 r = await isolate.evalFrame(frameNumber, 'instVar'); |
187 expect(r.valueAsString, equals('1')); | 187 expect(r.valueAsString, equals('1')); |
188 r = await isolate.evalFrame(frameNumber, 'classVar'); | 188 r = await isolate.evalFrame(frameNumber, 'classVar'); |
(...skipping 20 matching lines...) Expand all Loading... |
209 testMethod4(Isolate isolate) async { | 209 testMethod4(Isolate isolate) async { |
210 Library rootLib = await isolate.rootLibrary.load(); | 210 Library rootLib = await isolate.rootLibrary.load(); |
211 ServiceFunction function = | 211 ServiceFunction function = |
212 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); | 212 rootLib.functions.singleWhere((f) => f.name == 'breakHere'); |
213 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); | 213 Breakpoint bpt = await isolate.addBreakpointAtEntry(function); |
214 print("Breakpoint: $bpt"); | 214 print("Breakpoint: $bpt"); |
215 expect(bpt is Breakpoint, isTrue); // I.e, not null. | 215 expect(bpt is Breakpoint, isTrue); // I.e, not null. |
216 | 216 |
217 bool hitBreakpoint = false; | 217 bool hitBreakpoint = false; |
218 var sub; | 218 var sub; |
219 sub = isolate.vm.debugEvents.listen((ServiceEvent event) async { | 219 sub = isolate.vm.events.stream.listen((ServiceEvent event) async { |
220 print("Event $event"); | 220 print("Event $event"); |
221 if (event.eventType == ServiceEvent.kPauseBreakpoint) { | 221 if (event.eventType == ServiceEvent.kPauseBreakpoint) { |
222 var frameNumber = 1, r; | 222 var frameNumber = 1, r; |
223 r = await isolate.evalFrame(frameNumber, '123'); /// instance: continued | 223 r = await isolate.evalFrame(frameNumber, '123'); /// instance: continued |
224 expect(r.valueAsString, equals('123')); /// instance: continued | 224 expect(r.valueAsString, equals('123')); /// instance: continued |
225 r = await isolate.evalFrame(frameNumber, 'this'); /// scope: continued | 225 r = await isolate.evalFrame(frameNumber, 'this'); /// scope: continued |
226 expect(r.clazz.name, equals('C')); /// scope: continued | 226 expect(r.clazz.name, equals('C')); /// scope: continued |
227 r = await isolate.evalFrame(frameNumber, 'instVar'); /// instance: contin
ued | 227 r = await isolate.evalFrame(frameNumber, 'instVar'); /// instance: contin
ued |
228 expect(r.valueAsString, equals('1')); /// instance: continued | 228 expect(r.valueAsString, equals('1')); /// instance: continued |
229 r = await isolate.evalFrame(frameNumber, 'classVar'); /// instance: conti
nued | 229 r = await isolate.evalFrame(frameNumber, 'classVar'); /// instance: conti
nued |
(...skipping 26 matching lines...) Expand all Loading... |
256 } | 256 } |
257 | 257 |
258 var tests = [ | 258 var tests = [ |
259 testMethod, | 259 testMethod, |
260 testMethod2, | 260 testMethod2, |
261 testMethod3, | 261 testMethod3, |
262 testMethod4, | 262 testMethod4, |
263 ]; | 263 ]; |
264 | 264 |
265 main(args) => runIsolateTests(args, tests); | 265 main(args) => runIsolateTests(args, tests); |
OLD | NEW |