OLD | NEW |
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2016, 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 | 4 // VMOptions=--error_on_bad_type --error_on_bad_override |
5 | 5 |
6 import 'dart:developer'; | 6 import 'dart:developer'; |
7 import 'package:observatory/service_io.dart'; | 7 import 'package:observatory/service_io.dart'; |
8 import 'package:unittest/unittest.dart'; | 8 import 'package:unittest/unittest.dart'; |
9 import 'service_test_common.dart'; | 9 import 'service_test_common.dart'; |
10 import 'test_helper.dart'; | 10 import 'test_helper.dart'; |
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
66 hasStoppedAtBreakpoint, | 66 hasStoppedAtBreakpoint, |
67 (Isolate isolate) async { | 67 (Isolate isolate) async { |
68 // Get the timeline. | 68 // Get the timeline. |
69 Map result = await isolate.vm.invokeRpcNoUpgrade('_getVMTimeline', {}); | 69 Map result = await isolate.vm.invokeRpcNoUpgrade('_getVMTimeline', {}); |
70 expect(result['type'], equals('_Timeline')); | 70 expect(result['type'], equals('_Timeline')); |
71 expect(result['traceEvents'], new isInstanceOf<List>()); | 71 expect(result['traceEvents'], new isInstanceOf<List>()); |
72 print(result['traceEvents']); | 72 print(result['traceEvents']); |
73 // Confirm that Dart events are added. | 73 // Confirm that Dart events are added. |
74 expect(filterEvents(result['traceEvents'], isDart).length, greaterThan(0)); | 74 expect(filterEvents(result['traceEvents'], isDart).length, greaterThan(0)); |
75 // Confirm that zero non-Dart events are added. | 75 // Confirm that zero non-Dart events are added. |
76 expect(filterEvents(result['traceEvents'], isNotDartAndMetaData).length, | 76 expect( |
| 77 filterEvents(result['traceEvents'], isNotDartAndMetaData).length, |
77 equals(0)); | 78 equals(0)); |
78 }, | 79 }, |
79 hasStoppedAtBreakpoint, | 80 hasStoppedAtBreakpoint, |
80 (Isolate isolate) async { | 81 (Isolate isolate) async { |
81 // Disable the Dart category. | 82 // Disable the Dart category. |
82 await isolate.vm | 83 await isolate.vm.invokeRpcNoUpgrade('_setVMTimelineFlags', { |
83 .invokeRpcNoUpgrade('_setVMTimelineFlags', {"recordedStreams": []}); | 84 "recordedStreams": [] |
| 85 }); |
84 // Grab the timeline and remember the number of Dart events. | 86 // Grab the timeline and remember the number of Dart events. |
85 Map result = await isolate.vm.invokeRpcNoUpgrade('_getVMTimeline', {}); | 87 Map result = await isolate.vm.invokeRpcNoUpgrade('_getVMTimeline', {}); |
86 expect(result['type'], equals('_Timeline')); | 88 expect(result['type'], equals('_Timeline')); |
87 expect(result['traceEvents'], new isInstanceOf<List>()); | 89 expect(result['traceEvents'], new isInstanceOf<List>()); |
88 dartEventCount = filterEvents(result['traceEvents'], isDart).length; | 90 dartEventCount = filterEvents(result['traceEvents'], isDart).length; |
89 }, | 91 }, |
90 (Isolate isolate) async { | 92 (Isolate isolate) async { |
91 // Get the flags. | 93 // Get the flags. |
92 Map flags = await isolate.vm.invokeRpcNoUpgrade('_getVMTimelineFlags', {}); | 94 Map flags = await isolate.vm.invokeRpcNoUpgrade('_getVMTimelineFlags', {}); |
93 expect(flags['type'], 'TimelineFlags'); | 95 expect(flags['type'], 'TimelineFlags'); |
94 // Confirm that 'Dart' is not being recorded. | 96 // Confirm that 'Dart' is not being recorded. |
95 expect(flags['recordedStreams'].length, equals(0)); | 97 expect(flags['recordedStreams'].length, equals(0)); |
96 }, | 98 }, |
97 resumeIsolate, | 99 resumeIsolate, |
98 hasStoppedAtBreakpoint, | 100 hasStoppedAtBreakpoint, |
99 (Isolate isolate) async { | 101 (Isolate isolate) async { |
100 // Grab the timeline and verify that we haven't added any new Dart events. | 102 // Grab the timeline and verify that we haven't added any new Dart events. |
101 Map result = await isolate.vm.invokeRpcNoUpgrade('_getVMTimeline', {}); | 103 Map result = await isolate.vm.invokeRpcNoUpgrade('_getVMTimeline', {}); |
102 expect(result['type'], equals('_Timeline')); | 104 expect(result['type'], equals('_Timeline')); |
103 expect(result['traceEvents'], new isInstanceOf<List>()); | 105 expect(result['traceEvents'], new isInstanceOf<List>()); |
104 expect(filterEvents(result['traceEvents'], isDart).length, dartEventCount); | 106 expect(filterEvents(result['traceEvents'], isDart).length, dartEventCount); |
105 // Confirm that zero non-Dart events are added. | 107 // Confirm that zero non-Dart events are added. |
106 expect(filterEvents(result['traceEvents'], isNotDartAndMetaData).length, | 108 expect( |
| 109 filterEvents(result['traceEvents'], isNotDartAndMetaData).length, |
107 equals(0)); | 110 equals(0)); |
108 }, | 111 }, |
109 ]; | 112 ]; |
110 | 113 |
111 main(args) async => | 114 main(args) async => runIsolateTests(args, |
112 runIsolateTests(args, tests, testeeConcurrent: primeDartTimeline); | 115 tests, |
| 116 testeeConcurrent: primeDartTimeline); |
OLD | NEW |