OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 | 4 |
5 library isolate_echo_test; | 5 library isolate_echo_test; |
6 | 6 |
7 import 'test_helper.dart'; | 7 import 'test_helper.dart'; |
8 import 'package:expect/expect.dart'; | 8 import 'package:expect/expect.dart'; |
9 | 9 |
10 class EchoRequestTest extends VmServiceRequestHelper { | 10 class EchoRequestTest extends VmServiceRequestHelper { |
11 EchoRequestTest(port, id) : | 11 EchoRequestTest(port, id) : |
12 super('http://127.0.0.1:$port/isolates/$id/_echo/foo/bar?a=b&k=&d=e&z=w'); | 12 super('http://127.0.0.1:$port/$id/_echo/foo/bar?a=b&k=&d=e&z=w'); |
13 | 13 |
14 onRequestCompleted(Map reply) { | 14 onRequestCompleted(Map reply) { |
15 Expect.equals('message', reply['type']); | 15 Expect.equals('message', reply['type']); |
16 | 16 |
17 Expect.equals(3, reply['message']['arguments'].length); | 17 Expect.equals(3, reply['message']['arguments'].length); |
18 Expect.equals('_echo', reply['message']['arguments'][0]); | 18 Expect.equals('_echo', reply['message']['arguments'][0]); |
19 Expect.equals('foo', reply['message']['arguments'][1]); | 19 Expect.equals('foo', reply['message']['arguments'][1]); |
20 Expect.equals('bar', reply['message']['arguments'][2]); | 20 Expect.equals('bar', reply['message']['arguments'][2]); |
21 | 21 |
22 Expect.equals(4, reply['message']['option_keys'].length); | 22 Expect.equals(4, reply['message']['option_keys'].length); |
23 Expect.equals('a', reply['message']['option_keys'][0]); | 23 Expect.equals('a', reply['message']['option_keys'][0]); |
24 Expect.equals('k', reply['message']['option_keys'][1]); | 24 Expect.equals('k', reply['message']['option_keys'][1]); |
25 Expect.equals('d', reply['message']['option_keys'][2]); | 25 Expect.equals('d', reply['message']['option_keys'][2]); |
26 Expect.equals('z', reply['message']['option_keys'][3]); | 26 Expect.equals('z', reply['message']['option_keys'][3]); |
27 | 27 |
28 Expect.equals(4, reply['message']['option_values'].length); | 28 Expect.equals(4, reply['message']['option_values'].length); |
29 Expect.equals('b', reply['message']['option_values'][0]); | 29 Expect.equals('b', reply['message']['option_values'][0]); |
30 Expect.equals('', reply['message']['option_values'][1]); | 30 Expect.equals('', reply['message']['option_values'][1]); |
31 Expect.equals('e', reply['message']['option_values'][2]); | 31 Expect.equals('e', reply['message']['option_values'][2]); |
32 Expect.equals('w', reply['message']['option_values'][3]); | 32 Expect.equals('w', reply['message']['option_values'][3]); |
33 } | 33 } |
34 } | 34 } |
35 | 35 |
36 class IsolateListTest extends VmServiceRequestHelper { | 36 class IsolateListTest extends VmServiceRequestHelper { |
37 IsolateListTest(port) : super('http://127.0.0.1:$port/isolates'); | 37 IsolateListTest(port) : super('http://127.0.0.1:$port/isolates'); |
38 | 38 |
39 int _isolateId; | 39 String _isolateId; |
40 onRequestCompleted(Map reply) { | 40 onRequestCompleted(Map reply) { |
41 IsolateListTester tester = new IsolateListTester(reply); | 41 IsolateListTester tester = new IsolateListTester(reply); |
42 tester.checkIsolateCount(1); | 42 tester.checkIsolateCount(1); |
43 tester.checkIsolateNameContains('isolate_echo_script.dart'); | 43 tester.checkIsolateNameContains('isolate_echo_script.dart'); |
44 _isolateId = reply['members'][0]['id']; | 44 _isolateId = reply['members'][0]['id']; |
45 } | 45 } |
46 } | 46 } |
47 | 47 |
48 | 48 |
49 main() { | 49 main() { |
50 var process = new TestLauncher('isolate_echo_script.dart'); | 50 var process = new TestLauncher('isolate_echo_script.dart'); |
51 process.launch().then((port) { | 51 process.launch().then((port) { |
52 var test = new IsolateListTest(port); | 52 var test = new IsolateListTest(port); |
53 test.makeRequest().then((_) { | 53 test.makeRequest().then((_) { |
54 var echoRequestTest = new EchoRequestTest(port, test._isolateId); | 54 var echoRequestTest = new EchoRequestTest(port, test._isolateId); |
55 echoRequestTest.makeRequest().then((_) { | 55 echoRequestTest.makeRequest().then((_) { |
56 process.requestExit(); | 56 process.requestExit(); |
57 }); | 57 }); |
58 }); | 58 }); |
59 }); | 59 }); |
60 } | 60 } |
OLD | NEW |