OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 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 | 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 // Things that should be "auto-generated" are between AUTO START and | 5 // Things that should be "auto-generated" are between AUTO START and |
6 // AUTO END (or just AUTO if it's a single line). | 6 // AUTO END (or just AUTO if it's a single line). |
7 | 7 |
8 #library("MintMakerTest"); | 8 #library("MintMakerTest"); |
9 #import("dart:isolate"); | 9 #import("dart:isolate"); |
10 #import('../../lib/unittest/unittest.dart'); | 10 #import('../../lib/unittest/unittest.dart'); |
11 | 11 |
(...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
155 } | 155 } |
156 | 156 |
157 | 157 |
158 SendPort purse_; | 158 SendPort purse_; |
159 } | 159 } |
160 // AUTO END | 160 // AUTO END |
161 | 161 |
162 | 162 |
163 // AUTO STATUS UNCLEAR! | 163 // AUTO STATUS UNCLEAR! |
164 | 164 |
165 class MintMakerWrapperIsolate extends Isolate { | 165 mintMakerWrapper() { |
166 MintMakerWrapperIsolate() : super() { } | 166 port.receive((var message, SendPort replyTo) { |
167 void main() { | 167 Mint mint = new Mint(); |
168 this.port.receive((var message, SendPort replyTo) { | 168 replyTo.send([ mint.port ], null); |
169 Mint mint = new Mint(); | 169 }); |
170 replyTo.send([ mint.port ], null); | |
171 }); | |
172 } | |
173 } | 170 } |
174 | 171 |
175 class MintMakerWrapper { | 172 class MintMakerWrapper { |
176 MintMakerWrapper() { | 173 MintMakerWrapper() { |
177 port_ = new MintMakerWrapperIsolate().spawn(); | 174 port_ = spawnFunction(mintMakerWrapper); |
178 } | 175 } |
179 | 176 |
180 void makeMint(handleMint(MintWrapper mint)) { | 177 void makeMint(handleMint(MintWrapper mint)) { |
181 port_.then((SendPort port) { | 178 port_.call(null).then((var message) { |
182 port.call(null).then((var message) { | 179 SendPort mint = message[0]; |
183 SendPort mint = message[0]; | 180 handleMint(new MintWrapper(mint)); |
184 handleMint(new MintWrapper(mint)); | |
185 }); | |
186 }); | 181 }); |
187 } | 182 } |
188 | 183 |
189 Future<SendPort> port_; | 184 Future<SendPort> port_; |
190 } | 185 } |
191 | 186 |
192 _checkBalance(PurseWrapper wrapper, expected) { | 187 _checkBalance(PurseWrapper wrapper, expected) { |
193 wrapper.queryBalance(expectAsync1((int balance) { | 188 wrapper.queryBalance(expectAsync1((int balance) { |
194 expect(balance, equals(expected)); | 189 expect(balance, equals(expected)); |
195 })); | 190 })); |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
257 sprouted...deposit(purse, 5); | 252 sprouted...deposit(purse, 5); |
258 Expect.equals(0 + 5, sprouted.queryBalance()); | 253 Expect.equals(0 + 5, sprouted.queryBalance()); |
259 Expect.equals(100 - 5, purse.queryBalance()); | 254 Expect.equals(100 - 5, purse.queryBalance()); |
260 | 255 |
261 sprouted...deposit(purse, 42); | 256 sprouted...deposit(purse, 42); |
262 Expect.equals(0 + 5 + 42, sprouted.queryBalance()); | 257 Expect.equals(0 + 5 + 42, sprouted.queryBalance()); |
263 Expect.equals(100 - 5 - 42, purse.queryBalance()); | 258 Expect.equals(100 - 5 - 42, purse.queryBalance()); |
264 } | 259 } |
265 */ | 260 */ |
266 } | 261 } |
OLD | NEW |