| // Copyright (c) 2017, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| import '../runner/node/socket_channel.dart'; |
| |
| import 'package:test_core/src/runner/plugin/remote_platform_helpers.dart'; // ignore: implementation_imports |
| import 'package:test_core/src/util/stack_trace_mapper.dart'; // ignore: implementation_imports |
| |
| /// Bootstraps a browser test to communicate with the test runner. |
| void internalBootstrapNodeTest(Function Function() getMain) { |
| var channel = serializeSuite(getMain, beforeLoad: () async { |
| var serialized = await suiteChannel('test.node.mapper').stream.first; |
| if (serialized is! Map) return; |
| setStackTraceMapper(JSStackTraceMapper.deserialize(serialized)!); |
| }); |
| socketChannel().pipe(channel); |
| } |