change --machine flag for flutter test to report test progress as JSON (#10848)

(The Flutter plugin will use this to update the UI with test progress.)
This commit is contained in:
Brian Slesinsky 2017-06-20 14:40:42 -07:00 committed by GitHub
parent 2f979914e4
commit f01e9418fc
2 changed files with 11 additions and 4 deletions

View file

@ -172,8 +172,8 @@ class TestCommand extends FlutterCommand {
collector = new CoverageCollector();
}
final bool wantEvents = argResults['machine'];
if (collector != null && wantEvents) {
final bool machine = argResults['machine'];
if (collector != null && machine) {
throwToolExit(
"The test command doesn't support --machine and coverage together");
}
@ -181,7 +181,7 @@ class TestCommand extends FlutterCommand {
TestWatcher watcher;
if (collector != null) {
watcher = collector;
} else if (wantEvents) {
} else if (machine) {
watcher = new EventPrinter();
}
@ -192,7 +192,9 @@ class TestCommand extends FlutterCommand {
watcher: watcher,
enableObservatory: collector != null || startPaused,
startPaused: startPaused,
ipv6: argResults['ipv6']);
ipv6: argResults['ipv6'],
json: machine,
);
if (collector != null) {
if (!await _collectCoverageData(collector, mergeCoverageData: argResults['merge-coverage']))

View file

@ -24,6 +24,7 @@ Future<int> runTests(
bool enableObservatory: false,
bool startPaused: false,
bool ipv6: false,
bool json: false,
TestWatcher watcher,
}) async {
// Compute the command-line arguments for package:test.
@ -36,6 +37,10 @@ Future<int> runTests(
testArgs.add('--concurrency=1');
}
if (json) {
testArgs.addAll(<String>['-r', 'json']);
}
testArgs.add('--');
testArgs.addAll(testFiles);