| Index: lib/pub_serve.dart
|
| diff --git a/lib/pub_serve.dart b/lib/pub_serve.dart
|
| index cf96c135f62f81c66ffe91717cabb111a5fd6f35..f1fa8c7bde9ef8d2f45fea38f0a29313631a075e 100644
|
| --- a/lib/pub_serve.dart
|
| +++ b/lib/pub_serve.dart
|
| @@ -29,17 +29,23 @@ class PubServeTransformer extends Transformer implements DeclaringTransformer {
|
|
|
| transform.addOutput(
|
| new Asset.fromString(id.addExtension('.vm_test.dart'), '''
|
| -import "package:test/src/backend/metadata.dart";
|
| -import "package:test/src/runner/vm/isolate_listener.dart";
|
| + import "dart:isolate";
|
|
|
| -import "${p.url.basename(id.path)}" as test;
|
| + import "package:stream_channel/stream_channel.dart";
|
|
|
| -void main(_, Map message) {
|
| - var sendPort = message['reply'];
|
| - var metadata = new Metadata.deserialize(message['metadata']);
|
| - IsolateListener.start(sendPort, metadata, () => test.main);
|
| -}
|
| -'''));
|
| + import "package:test/src/runner/plugin/remote_platform_helpers.dart";
|
| + import "package:test/src/runner/vm/catch_isolate_errors.dart";
|
| +
|
| + import "${p.url.basename(id.path)}" as test;
|
| +
|
| + void main(_, SendPort message) {
|
| + var channel = serializeSuite(() {
|
| + catchIsolateErrors();
|
| + return test.main;
|
| + });
|
| + new IsolateChannel.connectSend(message).pipe(channel);
|
| + }
|
| + '''));
|
|
|
| transform.addOutput(
|
| new Asset.fromString(id.addExtension('.browser_test.dart'), '''
|
|
|