Unverified Commit 97a81209 authored by Dan Field's avatar Dan Field Committed by GitHub

guard new formatter behind env var (#29340)

* guard new formatter behind env var
parent 4feefa3c
...@@ -22,6 +22,9 @@ final String pub = path.join(flutterRoot, 'bin', 'cache', 'dart-sdk', 'bin', Pla ...@@ -22,6 +22,9 @@ final String pub = path.join(flutterRoot, 'bin', 'cache', 'dart-sdk', 'bin', Pla
final String pubCache = path.join(flutterRoot, '.pub-cache'); final String pubCache = path.join(flutterRoot, '.pub-cache');
final List<String> flutterTestArgs = <String>[]; final List<String> flutterTestArgs = <String>[];
final bool useFlutterTestFormatter = Platform.environment['FLUTTER_TEST_FORMATTER'] == 'true';
const Map<String, ShardRunner> _kShards = <String, ShardRunner>{ const Map<String, ShardRunner> _kShards = <String, ShardRunner>{
'tests': _runTests, 'tests': _runTests,
'tool_tests': _runToolTests, 'tool_tests': _runToolTests,
...@@ -146,6 +149,9 @@ Future<void> _runSmokeTests() async { ...@@ -146,6 +149,9 @@ Future<void> _runSmokeTests() async {
} }
Future<bq.BigqueryApi> _getBigqueryApi() async { Future<bq.BigqueryApi> _getBigqueryApi() async {
if (!useFlutterTestFormatter) {
return null;
}
// TODO(dnfield): How will we do this on LUCI? // TODO(dnfield): How will we do this on LUCI?
final String privateKey = Platform.environment['GCLOUD_SERVICE_ACCOUNT_KEY']; final String privateKey = Platform.environment['GCLOUD_SERVICE_ACCOUNT_KEY'];
// If we're on Cirrus and a non-collaborator is doing this, we can't get the key. // If we're on Cirrus and a non-collaborator is doing this, we can't get the key.
...@@ -153,7 +159,7 @@ Future<bq.BigqueryApi> _getBigqueryApi() async { ...@@ -153,7 +159,7 @@ Future<bq.BigqueryApi> _getBigqueryApi() async {
return null; return null;
} }
try { try {
final auth.ServiceAccountCredentials accountCredentials = auth.ServiceAccountCredentials( //.fromJson(credentials); final auth.ServiceAccountCredentials accountCredentials = auth.ServiceAccountCredentials(
'flutter-ci-test-reporter@flutter-infra.iam.gserviceaccount.com', 'flutter-ci-test-reporter@flutter-infra.iam.gserviceaccount.com',
auth.ClientId.serviceAccount('114390419920880060881.apps.googleusercontent.com'), auth.ClientId.serviceAccount('114390419920880060881.apps.googleusercontent.com'),
'-----BEGIN PRIVATE KEY-----\n$privateKey\n-----END PRIVATE KEY-----\n', '-----BEGIN PRIVATE KEY-----\n$privateKey\n-----END PRIVATE KEY-----\n',
...@@ -344,7 +350,7 @@ Future<void> _buildRunnerTest( ...@@ -344,7 +350,7 @@ Future<void> _buildRunnerTest(
bool enableFlutterToolAsserts = false, bool enableFlutterToolAsserts = false,
bq.TabledataResourceApi tableData, bq.TabledataResourceApi tableData,
}) async { }) async {
final List<String> args = <String>['run', 'build_runner', 'test', '--', '-rcompact', '-j1']; final List<String> args = <String>['run', 'build_runner', 'test', '--', useFlutterTestFormatter ? '-rjson' : '-rcompact', '-j1'];
if (!hasColor) { if (!hasColor) {
args.add('--no-color'); args.add('--no-color');
} }
...@@ -366,15 +372,24 @@ Future<void> _buildRunnerTest( ...@@ -366,15 +372,24 @@ Future<void> _buildRunnerTest(
pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim(); pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim();
} }
final FlutterCompactFormatter formatter = FlutterCompactFormatter(); if (useFlutterTestFormatter) {
final Stream<String> testOutput = runAndGetStdout( final FlutterCompactFormatter formatter = FlutterCompactFormatter();
pub, final Stream<String> testOutput = runAndGetStdout(
args, pub,
workingDirectory: workingDirectory, args,
environment: pubEnvironment, workingDirectory: workingDirectory,
beforeExit: formatter.finish environment: pubEnvironment,
); beforeExit: formatter.finish
await _processTestOutput(formatter, testOutput, tableData); );
await _processTestOutput(formatter, testOutput, tableData);
} else {
await runCommand(
pub,
args,
workingDirectory:workingDirectory,
environment:pubEnvironment,
);
}
} }
Future<void> _pubRunTest( Future<void> _pubRunTest(
...@@ -383,7 +398,7 @@ Future<void> _pubRunTest( ...@@ -383,7 +398,7 @@ Future<void> _pubRunTest(
bool enableFlutterToolAsserts = false, bool enableFlutterToolAsserts = false,
bq.TabledataResourceApi tableData, bq.TabledataResourceApi tableData,
}) async { }) async {
final List<String> args = <String>['run', 'test', '-rjson', '-j1']; final List<String> args = <String>['run', 'test', useFlutterTestFormatter ? '-rjson' : '-rcompact', '-j1'];
if (!hasColor) if (!hasColor)
args.add('--no-color'); args.add('--no-color');
if (testPath != null) if (testPath != null)
...@@ -400,14 +415,22 @@ Future<void> _pubRunTest( ...@@ -400,14 +415,22 @@ Future<void> _pubRunTest(
toolsArgs += ' --enable-asserts'; toolsArgs += ' --enable-asserts';
pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim(); pubEnvironment['FLUTTER_TOOL_ARGS'] = toolsArgs.trim();
} }
final FlutterCompactFormatter formatter = FlutterCompactFormatter(); if (useFlutterTestFormatter) {
final Stream<String> testOutput = runAndGetStdout( final FlutterCompactFormatter formatter = FlutterCompactFormatter();
pub, final Stream<String> testOutput = runAndGetStdout(
args, pub,
workingDirectory: workingDirectory, args,
beforeExit: formatter.finish, workingDirectory: workingDirectory,
); beforeExit: formatter.finish,
await _processTestOutput(formatter, testOutput, tableData); );
await _processTestOutput(formatter, testOutput, tableData);
} else {
await runCommand(
pub,
args,
workingDirectory:workingDirectory,
);
}
} }
enum CiProviders { enum CiProviders {
...@@ -563,7 +586,7 @@ Future<void> _runFlutterTest(String workingDirectory, { ...@@ -563,7 +586,7 @@ Future<void> _runFlutterTest(String workingDirectory, {
if (flutterTestArgs != null && flutterTestArgs.isNotEmpty) if (flutterTestArgs != null && flutterTestArgs.isNotEmpty)
args.addAll(flutterTestArgs); args.addAll(flutterTestArgs);
final bool shouldProcessOutput = !expectFailure && !options.contains('--coverage'); final bool shouldProcessOutput = useFlutterTestFormatter && !expectFailure && !options.contains('--coverage');
if (shouldProcessOutput) { if (shouldProcessOutput) {
args.add('--machine'); args.add('--machine');
} }
...@@ -591,14 +614,27 @@ Future<void> _runFlutterTest(String workingDirectory, { ...@@ -591,14 +614,27 @@ Future<void> _runFlutterTest(String workingDirectory, {
timeout: timeout, timeout: timeout,
); );
} }
if (useFlutterTestFormatter) {
final FlutterCompactFormatter formatter = FlutterCompactFormatter(); final FlutterCompactFormatter formatter = FlutterCompactFormatter();
final Stream<String> testOutput = runAndGetStdout(flutter, args, final Stream<String> testOutput = runAndGetStdout(
flutter,
args,
workingDirectory: workingDirectory, workingDirectory: workingDirectory,
expectNonZeroExit: expectFailure, expectNonZeroExit: expectFailure,
timeout: timeout, timeout: timeout,
beforeExit: formatter.finish, beforeExit: formatter.finish,
); );
await _processTestOutput(formatter, testOutput, tableData); await _processTestOutput(formatter, testOutput, tableData);
} else {
await runCommand(
flutter,
args,
workingDirectory: workingDirectory,
expectNonZeroExit: expectFailure,
timeout: timeout,
);
}
} }
Future<void> _verifyVersion(String filename) async { Future<void> _verifyVersion(String filename) async {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment