| Index: lib/src/runner/vm/isolate_listener.dart
|
| diff --git a/lib/src/runner/vm/isolate_listener.dart b/lib/src/runner/vm/isolate_listener.dart
|
| index ed23a1d1adfeeb67d6fe2ff89e3fc56d0e1d3f09..a25c9d682401c2243d46909f1574c2e6844d1f30 100644
|
| --- a/lib/src/runner/vm/isolate_listener.dart
|
| +++ b/lib/src/runner/vm/isolate_listener.dart
|
| @@ -51,19 +51,18 @@ class IsolateListener {
|
| }
|
|
|
| var declarer = new Declarer();
|
| - try {
|
| - runZoned(main, zoneValues: {#test.declarer: declarer});
|
| - } catch (error, stackTrace) {
|
| + runZoned(() => new Future.sync(main), zoneValues: {
|
| + #test.declarer: declarer
|
| + }).then((_) {
|
| + var suite = new Suite(declarer.tests, metadata: metadata)
|
| + .forPlatform(TestPlatform.vm, os: currentOS);
|
| + new IsolateListener._(suite)._listen(sendPort);
|
| + }, onError: (error, stackTrace) {
|
| sendPort.send({
|
| "type": "error",
|
| "error": RemoteException.serialize(error, stackTrace)
|
| });
|
| - return;
|
| - }
|
| -
|
| - var suite = new Suite(declarer.tests, metadata: metadata)
|
| - .forPlatform(TestPlatform.vm, os: currentOS);
|
| - new IsolateListener._(suite)._listen(sendPort);
|
| + });
|
| }
|
|
|
| /// Sends a message over [sendPort] indicating that the tests failed to load.
|
|
|