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

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

Issue 10153005: unittest step 3 and 4: remove TestFramework.dart, make test.dart use (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
« no previous file with comments | « tests/isolate/src/SpawnTest.dart ('k') | tests/isolate/src/TestFramework.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 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 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("StaticStateTest"); 5 #library("StaticStateTest");
6 #import("dart:isolate"); 6 #import("dart:isolate");
7 #import("TestFramework.dart"); 7 #import('../../../lib/unittest/unittest.dart');
8 8
9 class TestIsolate extends Isolate { 9 class TestIsolate extends Isolate {
10 10
11 TestIsolate() : super(); 11 TestIsolate() : super();
12 12
13 void main() { 13 void main() {
14 Expect.equals(null, state); 14 Expect.equals(null, state);
15 this.port.receive((var message, SendPort replyTo) { 15 this.port.receive((var message, SendPort replyTo) {
16 String old = state; 16 String old = state;
17 state = message; 17 state = message;
18 replyTo.send(old, null); 18 replyTo.send(old, null);
19 if (message == "exit") { 19 if (message == "exit") {
20 this.port.close(); 20 this.port.close();
21 } 21 }
22 }); 22 });
23 } 23 }
24 24
25 static String state; 25 static String state;
26 26
27 } 27 }
28 28
29 void test(TestExpectation expect) { 29 void main() {
30 Expect.equals(null, TestIsolate.state); 30 test("static state is not shared between isolates", () {
31 TestIsolate.state = "foo"; 31 Expect.equals(null, TestIsolate.state);
32 Expect.equals("foo", TestIsolate.state); 32 TestIsolate.state = "foo";
33 Expect.equals("foo", TestIsolate.state);
33 34
34 expect.completes(new TestIsolate().spawn()).then((SendPort remote) { 35 new TestIsolate().spawn().then(expectAsync1((SendPort remote) {
35 remote.call("bar").then(expect.runs1((reply) { 36 remote.call("bar").then(expectAsync1((reply) {
36 Expect.equals("foo", TestIsolate.state); 37 Expect.equals("foo", TestIsolate.state);
37 Expect.equals(null, reply); 38 Expect.equals(null, reply);
38 39
39 TestIsolate.state = "baz"; 40 TestIsolate.state = "baz";
40 remote.call("exit").then(expect.runs1((reply) { 41 remote.call("exit").then(expectAsync1((reply) {
41 Expect.equals("baz", TestIsolate.state); 42 Expect.equals("baz", TestIsolate.state);
42 Expect.equals("bar", reply); 43 Expect.equals("bar", reply);
43 expect.succeeded(); 44 }));
44 })); 45 }));
45 })); 46 }));
46 }); 47 });
47 } 48 }
48
49 void main() {
50 runTests([test]);
51 }
OLDNEW
« no previous file with comments | « tests/isolate/src/SpawnTest.dart ('k') | tests/isolate/src/TestFramework.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698