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

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

Issue 9358010: isolates in frog: playing with API improvements (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: '' Created 8 years, 10 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) 2012, 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 // negative test to ensure that APIv2_unresolvedPortsBrowserTest works.
6 #library('unresolved_ports');
7 #import("../../../client/testing/unittest/unittest.dart");
8 #import("dart:dom"); // import added so test.dart can treat this as a webtest.
9
10 // This is similar as SpawnFromCodeAPIv2Test but using 'unittest.dart' so it can
11 // run to completion in browsers.
12
13 bethIsolate(ReceivePort port) {
14 port.receive((msg, reply) => msg[1].send(
15 "${msg[0]}\nBeth says: Tim are you coming? And Bob?", reply));
16 }
17
18 timIsolate(ReceivePort port) {
19 Isolate2 bob = new Isolate2.fromCode(bobIsolate);
20 port.receive((msg, reply) => bob.sendPort.send(
21 "$msg\nTim says: Can you tell 'main' that we are all coming?", reply));
22 }
23
24 bobIsolate(ReceivePort port) {
25 port.receive((msg, reply) => reply.send(
26 "$msg\nBob says: we are all coming!"));
27 }
28
29 main() {
30 asyncTest("Message chain with unresolved ports", 1, () {
31 ReceivePort port = new ReceivePort();
32 port.receive((msg, _) {
33 expect(msg).equals("main says: Beth, find out if Tim is coming."
34 + "\nBeth says: Tim are you coming? And Bob?"
35 + "\nTim says: Can you tell 'main' that we are all coming?"
36 + "\nBob says: we are NOT coming!"); // should be 'all', not 'NOT'
37 port.close();
38 callbackDone();
39 });
40
41 Isolate2 tim = new Isolate2.fromCode(timIsolate);
42 Isolate2 beth = new Isolate2.fromCode(bethIsolate);
43
44 beth.sendPort.send(
45 // because tim is created asynchronously, here we are sending an
46 // unresolved port:
47 ["main says: Beth, find out if Tim is coming.", tim.sendPort],
48 port.toSendPort());
49 });
50 }
OLDNEW
« no previous file with comments | « tests/isolate/src/APIv2_spawnStandaloneTest.dart ('k') | tests/isolate/src/APIv2_unresolvedPortsBrowserTest.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698