OLD | NEW |
| (Empty) |
1 // Copyright (c) 2014, 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 import 'dart:io'; | |
6 import 'dart:isolate'; | |
7 | |
8 final SPAWN_PACKAGE_ROOT = "file:///no/such/file/"; | |
9 | |
10 void main([args, port]) { | |
11 if (port != null) { | |
12 testPackageRoot(port); | |
13 return; | |
14 } | |
15 var p = new RawReceivePort(); | |
16 Isolate.spawnUri(Platform.script, | |
17 [], | |
18 p.sendPort, | |
19 packageRoot: Uri.parse(SPAWN_PACKAGE_ROOT)); | |
20 p.handler = (msg) { | |
21 p.close(); | |
22 if (msg != SPAWN_PACKAGE_ROOT) { | |
23 throw "Bad package root in child isolate: $msg"; | |
24 } | |
25 }; | |
26 } | |
27 | |
28 testPackageRoot(port) async { | |
29 var packageRoot = await Isolate.packageRoot; | |
30 port.send(packageRoot.toString()); | |
31 } | |
OLD | NEW |