From 376cb2eb38df4ea7057210f88c4753fe07fc36ec Mon Sep 17 00:00:00 2001 From: Chinmay Garde Date: Wed, 18 May 2016 16:58:46 -0700 Subject: [PATCH] Attach standard streams of the child sky_shell process so that logs from the shell show up. (#4024) --- .../lib/src/test/flutter_platform.dart | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/flutter_tools/lib/src/test/flutter_platform.dart b/packages/flutter_tools/lib/src/test/flutter_platform.dart index 51d42f014bd..81f34e0454b 100644 --- a/packages/flutter_tools/lib/src/test/flutter_platform.dart +++ b/packages/flutter_tools/lib/src/test/flutter_platform.dart @@ -54,6 +54,18 @@ Future _startProcess(String mainPath, { String packages }) { ], environment: { 'FLUTTER_TEST': 'true' }); } +void _attachStandardStreams(Process process) { + for (Stream> stream in + >>[process.stderr, process.stdout]) { + stream.transform(UTF8.decoder) + .transform(const LineSplitter()) + .listen((String line) { + if (line != null) + print('Shell: $line'); + }); + } +} + class FlutterPlatform extends PlatformPlugin { @override StreamChannel loadChannel(String mainPath, TestPlatform platform) { @@ -93,6 +105,8 @@ void main() { listenerFile.path, packages: PackageMap.instance.packagesPath ); + _attachStandardStreams(process); + void finalize() { if (process != null) { Process processToKill = process;