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

Side by Side Diff: tests/isolate/src/NestedSpawnTest.dart

Issue 10247004: test rename overhaul: step 6 - isolate tests (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 7 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
(Empty)
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
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.
4
5 // Dart test program for testing that isolates can spawn other isolates.
6
7 #library('NestedSpawnTest');
8 #import("dart:isolate");
9 #import('../../../lib/unittest/unittest.dart');
10
11 class IsolateA extends Isolate {
12 IsolateA() : super.heavy();
13
14 void main() {
15 this.port.receive((msg, replyTo) {
16 Expect.equals("launch nested!", msg);
17 new IsolateB().spawn().then((SendPort p) {
18 p.call("alive?").then((msg) {
19 Expect.equals("and kicking", msg);
20 replyTo.send(499, null);
21 this.port.close();
22 });
23 });
24 });
25 }
26 }
27
28 class IsolateB extends Isolate {
29 IsolateB() : super.heavy();
30
31 void main() {
32 this.port.receive((msg, replyTo) {
33 Expect.equals("alive?", msg);
34 replyTo.send("and kicking", null);
35 this.port.close();
36 });
37 }
38 }
39
40
41 main() {
42 test("spawned isolates can spawn nested isolates", () {
43 new IsolateA().spawn().then(expectAsync1((SendPort port) {
44 port.call("launch nested!").then(expectAsync1((msg) {
45 Expect.equals(499, msg);
46 }));
47 }));
48 });
49 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698