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

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

Issue 1143783003: Add the streamListen and streamCancel rpcs to the vm service. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: before commit Created 5 years, 6 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
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, 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 'dart:async'; 6 import 'dart:async';
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 'test_helper.dart'; 9 import 'test_helper.dart';
10 10
11 var tests = [ 11 var tests = [
12 12
13 (Isolate isolate) => 13 (Isolate isolate) =>
14 isolate.vm.invokeRpc('_echo', { 'text': 'hello'}).then((result) { 14 isolate.vm.invokeRpc('_echo', { 'text': 'hello'}).then((result) {
15 expect(result['type'], equals('_EchoResponse')); 15 expect(result['type'], equals('_EchoResponse'));
16 expect(result['text'], equals('hello')); 16 expect(result['text'], equals('hello'));
17 }), 17 }),
18 18
19 (Isolate isolate) => 19 (Isolate isolate) =>
20 isolate.invokeRpc('_echo', { 'text': 'hello'}).then((result) { 20 isolate.invokeRpc('_echo', { 'text': 'hello'}).then((result) {
21 expect(result['type'], equals('_EchoResponse')); 21 expect(result['type'], equals('_EchoResponse'));
22 expect(result['text'], equals('hello')); 22 expect(result['text'], equals('hello'));
23 }), 23 }),
24 24
25 (Isolate isolate) { 25 (Isolate isolate) {
26 Completer completer = new Completer(); 26 Completer completer = new Completer();
27 isolate.vm.events.stream.listen((ServiceEvent event) { 27 isolate.vm.getEventStream('_Echo').listen((ServiceEvent event) {
28 if (event.eventType == '_Echo') { 28 if (event.eventType == '_Echo') {
29 expect(event.data.lengthInBytes, equals(3)); 29 expect(event.data.lengthInBytes, equals(3));
30 expect(event.data.getUint8(0), equals(0)); 30 expect(event.data.getUint8(0), equals(0));
31 expect(event.data.getUint8(1), equals(128)); 31 expect(event.data.getUint8(1), equals(128));
32 expect(event.data.getUint8(2), equals(255)); 32 expect(event.data.getUint8(2), equals(255));
33 completer.complete(); 33 completer.complete();
34 } 34 }
35 }); 35 });
36 isolate.invokeRpc('_triggerEchoEvent', { 'text': 'hello' }); 36 isolate.invokeRpc('_triggerEchoEvent', { 'text': 'hello' });
37 return completer.future; 37 return completer.future;
38 }, 38 },
39 39
40 ]; 40 ];
41 41
42 main(args) => runIsolateTests(args, tests); 42 main(args) => runIsolateTests(args, tests);
OLDNEW
« no previous file with comments | « runtime/observatory/tests/service/debugging_test.dart ('k') | runtime/observatory/tests/service/eval_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698