Unverified Commit 2f8474f9 authored by Alexander Aprelev's avatar Alexander Aprelev Committed by GitHub

Roll engine to b6df7a637498ca9beda1fa9cd7210e3202ea599f. (#15444)

* Roll engine to b6df7a637498ca9beda1fa9cd7210e3202ea599f.

Changes since last roll:
```
b6df7a637 Roll dart to 290c576264faa096a0b3206c71b2435309d9f904. (#4771)
a6764dbd5 Add sources for Fuchsia target. (#4763)
2d5900615 [fuchsia] Remove unused header file. (#4769)
9717063b7 Revert "Roll dart to c080951d45e79cd25df98036c4be835b284a269c. (#4767)" (#4768)
9a9814312 Roll dart to c080951d45e79cd25df98036c4be835b284a269c. (#4767)
e74e8b35c [async] Update includes of async headers to new path (#4760)
e2c4b2760 Use Dart 2 camel case constants in the engine Dart libraries (#4766)
9c1e48434 Updates for Fuchsia roll. (#4765)
14c940e27 Switch from fxl::Mutex to std::mutex (#4764)
debf82c0b Roll Garnet (#4759)
5bffdefbb Use weak pointers to the accesibility bridge from objects vended to the UIKit accessibility framework. (#4761)
```
parent 07eb5ea0
1d0da7799583b089ede66b81068f40cc4597a429 b6df7a637498ca9beda1fa9cd7210e3202ea599f
...@@ -36,8 +36,8 @@ void main() { ...@@ -36,8 +36,8 @@ void main() {
fail('Expected exactly one semantics event, got ${semanticsEvents.length}'); fail('Expected exactly one semantics event, got ${semanticsEvents.length}');
final Duration semanticsTreeCreation = semanticsEvents.first.duration; final Duration semanticsTreeCreation = semanticsEvents.first.duration;
final String json = JSON.encode(<String, dynamic>{'initialSemanticsTreeCreation': semanticsTreeCreation.inMilliseconds}); final String jsonEncoded = json.encode(<String, dynamic>{'initialSemanticsTreeCreation': semanticsTreeCreation.inMilliseconds});
new File(p.join(testOutputsDirectory, 'complex_layout_semantics_perf.json')).writeAsStringSync(json); new File(p.join(testOutputsDirectory, 'complex_layout_semantics_perf.json')).writeAsStringSync(jsonEncoded);
}); });
}); });
} }
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:convert' show JSON; import 'dart:convert' show json;
import 'package:meta/meta.dart'; import 'package:meta/meta.dart';
...@@ -54,7 +54,7 @@ class BenchmarkResultPrinter { ...@@ -54,7 +54,7 @@ class BenchmarkResultPrinter {
for (_BenchmarkResult result in _results) { for (_BenchmarkResult result in _results) {
results[result.name] = result.value; results[result.name] = result.value;
} }
return JSON.encode(results); return json.encode(results);
} }
String _printPlainText() { String _printPlainText() {
......
...@@ -172,7 +172,7 @@ dependencies: ...@@ -172,7 +172,7 @@ dependencies:
workingDirectory: temp.path, workingDirectory: temp.path,
); );
stderr.addStream(process.stderr); stderr.addStream(process.stderr);
final List<String> errors = await process.stdout.transform<String>(UTF8.decoder).transform<String>(const LineSplitter()).toList(); final List<String> errors = await process.stdout.transform<String>(utf8.decoder).transform<String>(const LineSplitter()).toList();
if (errors.first == 'Building flutter tool...') if (errors.first == 'Building flutter tool...')
errors.removeAt(0); errors.removeAt(0);
if (errors.first.startsWith('Running "flutter packages get" in ')) if (errors.first.startsWith('Running "flutter packages get" in '))
......
...@@ -170,7 +170,7 @@ class ProcessRunner { ...@@ -170,7 +170,7 @@ class ProcessRunner {
throw new ProcessRunnerException( throw new ProcessRunnerException(
message, new ProcessResult(0, exitCode, null, 'returned $exitCode')); message, new ProcessResult(0, exitCode, null, 'returned $exitCode'));
} }
return UTF8.decoder.convert(output).trim(); return utf8.decoder.convert(output).trim();
} }
} }
......
...@@ -290,8 +290,8 @@ Future<EvalResult> _evalCommand(String executable, List<String> arguments, { ...@@ -290,8 +290,8 @@ Future<EvalResult> _evalCommand(String executable, List<String> arguments, {
final Future<List<List<int>>> savedStderr = process.stderr.toList(); final Future<List<List<int>>> savedStderr = process.stderr.toList();
final int exitCode = await process.exitCode; final int exitCode = await process.exitCode;
final EvalResult result = new EvalResult( final EvalResult result = new EvalResult(
stdout: UTF8.decode((await savedStdout).expand((List<int> ints) => ints).toList()), stdout: utf8.decode((await savedStdout).expand((List<int> ints) => ints).toList()),
stderr: UTF8.decode((await savedStderr).expand((List<int> ints) => ints).toList()), stderr: utf8.decode((await savedStderr).expand((List<int> ints) => ints).toList()),
); );
if (exitCode != 0) { if (exitCode != 0) {
...@@ -341,8 +341,8 @@ Future<Null> _runCommand(String executable, List<String> arguments, { ...@@ -341,8 +341,8 @@ Future<Null> _runCommand(String executable, List<String> arguments, {
final int exitCode = await process.exitCode; final int exitCode = await process.exitCode;
if ((exitCode == 0) == expectFailure) { if ((exitCode == 0) == expectFailure) {
if (!printOutput) { if (!printOutput) {
print(UTF8.decode((await savedStdout).expand((List<int> ints) => ints).toList())); print(utf8.decode((await savedStdout).expand((List<int> ints) => ints).toList()));
print(UTF8.decode((await savedStderr).expand((List<int> ints) => ints).toList())); print(utf8.decode((await savedStderr).expand((List<int> ints) => ints).toList()));
} }
print( print(
'$red━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━$reset\n' '$red━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━$reset\n'
......
...@@ -30,7 +30,7 @@ void main() { ...@@ -30,7 +30,7 @@ void main() {
); );
final StreamController<String> stdout = new StreamController<String>.broadcast(); final StreamController<String> stdout = new StreamController<String>.broadcast();
run.stdout run.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('run:stdout: $line'); print('run:stdout: $line');
...@@ -44,7 +44,7 @@ void main() { ...@@ -44,7 +44,7 @@ void main() {
} }
}); });
run.stderr run.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
stderr.writeln('run:stderr: $line'); stderr.writeln('run:stderr: $line');
...@@ -112,13 +112,13 @@ class DriveHelper { ...@@ -112,13 +112,13 @@ class DriveHelper {
<String>['drive', '--use-existing-app', 'http://127.0.0.1:$vmServicePort/', '--keep-app-running', '--driver', 'test_driver/commands_${name}_test.dart'], <String>['drive', '--use-existing-app', 'http://127.0.0.1:$vmServicePort/', '--keep-app-running', '--driver', 'test_driver/commands_${name}_test.dart'],
); );
drive.stdout drive.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('drive:stdout: $line'); print('drive:stdout: $line');
}); });
drive.stderr drive.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
stderr.writeln('drive:stderr: $line'); stderr.writeln('drive:stderr: $line');
......
...@@ -21,7 +21,7 @@ Future<Null> main() async { ...@@ -21,7 +21,7 @@ Future<Null> main() async {
int publicMembers = 0; int publicMembers = 0;
int otherErrors = 0; int otherErrors = 0;
int otherLines = 0; int otherLines = 0;
await for (String entry in analysis.stderr.transform(UTF8.decoder).transform(const LineSplitter())) { await for (String entry in analysis.stderr.transform(utf8.decoder).transform(const LineSplitter())) {
print('analyzer stderr: $entry'); print('analyzer stderr: $entry');
if (entry.startsWith('[lint] Document all public members')) { if (entry.startsWith('[lint] Document all public members')) {
publicMembers += 1; publicMembers += 1;
...@@ -33,7 +33,7 @@ Future<Null> main() async { ...@@ -33,7 +33,7 @@ Future<Null> main() async {
otherLines += 1; otherLines += 1;
} }
} }
await for (String entry in analysis.stdout.transform(UTF8.decoder).transform(const LineSplitter())) { await for (String entry in analysis.stdout.transform(utf8.decoder).transform(const LineSplitter())) {
print('analyzer stdout: $entry'); print('analyzer stdout: $entry');
if (entry == 'Building flutter tool...') { if (entry == 'Building flutter tool...') {
// ignore this line // ignore this line
......
...@@ -37,7 +37,7 @@ void main() { ...@@ -37,7 +37,7 @@ void main() {
<String>['run', '--verbose', '-d', device.deviceId, '--route', '/smuggle-it', 'lib/route.dart'], <String>['run', '--verbose', '-d', device.deviceId, '--route', '/smuggle-it', 'lib/route.dart'],
); );
run.stdout run.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('run:stdout: $line'); print('run:stdout: $line');
...@@ -50,7 +50,7 @@ void main() { ...@@ -50,7 +50,7 @@ void main() {
} }
}); });
run.stderr run.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
stderr.writeln('run:stderr: $line'); stderr.writeln('run:stderr: $line');
...@@ -65,13 +65,13 @@ void main() { ...@@ -65,13 +65,13 @@ void main() {
<String>['drive', '--use-existing-app', 'http://127.0.0.1:$vmServicePort/', '--no-keep-app-running', 'lib/route.dart'], <String>['drive', '--use-existing-app', 'http://127.0.0.1:$vmServicePort/', '--no-keep-app-running', 'lib/route.dart'],
); );
drive.stdout drive.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('drive:stdout: $line'); print('drive:stdout: $line');
}); });
drive.stderr drive.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
stderr.writeln('drive:stderr: $line'); stderr.writeln('drive:stderr: $line');
......
...@@ -17,7 +17,7 @@ void main() { ...@@ -17,7 +17,7 @@ void main() {
Map<String, dynamic> parseFlutterResponse(String line) { Map<String, dynamic> parseFlutterResponse(String line) {
if (line.startsWith('[') && line.endsWith(']')) { if (line.startsWith('[') && line.endsWith(']')) {
try { try {
return JSON.decode(line)[0]; return json.decode(line)[0];
} catch (e) { } catch (e) {
// Not valid JSON, so likely some other output that was surrounded by [brackets] // Not valid JSON, so likely some other output that was surrounded by [brackets]
return null; return null;
...@@ -27,7 +27,7 @@ void main() { ...@@ -27,7 +27,7 @@ void main() {
} }
Stream<String> transformToLines(Stream<List<int>> byteStream) { Stream<String> transformToLines(Stream<List<int>> byteStream) {
return byteStream.transform(UTF8.decoder).transform(const LineSplitter()); return byteStream.transform(utf8.decoder).transform(const LineSplitter());
} }
task(() async { task(() async {
...@@ -99,9 +99,9 @@ void main() { ...@@ -99,9 +99,9 @@ void main() {
'method': method, 'method': method,
'params': params 'params': params
}; };
final String json = JSON.encode(<Map<String, dynamic>>[req]); final String jsonEncoded = json.encode(<Map<String, dynamic>>[req]);
print('run:stdin: $json'); print('run:stdin: $jsonEncoded');
run.stdin.writeln(json); run.stdin.writeln(jsonEncoded);
final Map<String, dynamic> result = await response.future; final Map<String, dynamic> result = await response.future;
responseSubscription.cancel(); responseSubscription.cancel();
return result; return result;
......
...@@ -29,7 +29,7 @@ void main() { ...@@ -29,7 +29,7 @@ void main() {
<String>['run', '--verbose', '-d', device.deviceId, 'lib/main.dart'], <String>['run', '--verbose', '-d', device.deviceId, 'lib/main.dart'],
); );
run.stdout run.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('run:stdout: $line'); print('run:stdout: $line');
...@@ -42,7 +42,7 @@ void main() { ...@@ -42,7 +42,7 @@ void main() {
} }
}); });
run.stderr run.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
stderr.writeln('run:stderr: $line'); stderr.writeln('run:stderr: $line');
......
...@@ -53,7 +53,7 @@ Future<Null> main() async { ...@@ -53,7 +53,7 @@ Future<Null> main() async {
workingDirectory: flutterDirectory.path, workingDirectory: flutterDirectory.path,
); );
double total = 0.0; double total = 0.0;
await for (String entry in git.stdout.transform(UTF8.decoder).transform(const LineSplitter())) await for (String entry in git.stdout.transform(utf8.decoder).transform(const LineSplitter()))
total += await findCostsForFile(new File(path.join(flutterDirectory.path, entry))); total += await findCostsForFile(new File(path.join(flutterDirectory.path, entry)));
final int gitExitCode = await git.exitCode; final int gitExitCode = await git.exitCode;
if (gitExitCode != 0) if (gitExitCode != 0)
......
...@@ -67,7 +67,7 @@ class _TaskRunner { ...@@ -67,7 +67,7 @@ class _TaskRunner {
? new Duration(minutes: int.parse(parameters['timeoutInMinutes'])) ? new Duration(minutes: int.parse(parameters['timeoutInMinutes']))
: _kDefaultTaskTimeout; : _kDefaultTaskTimeout;
final TaskResult result = await run(taskTimeout); final TaskResult result = await run(taskTimeout);
return new ServiceExtensionResponse.result(JSON.encode(result.toJson())); return new ServiceExtensionResponse.result(json.encode(result.toJson()));
}); });
registerExtension('ext.cocoonRunnerReady', registerExtension('ext.cocoonRunnerReady',
(String method, Map<String, String> parameters) async { (String method, Map<String, String> parameters) async {
...@@ -164,7 +164,7 @@ class TaskResult { ...@@ -164,7 +164,7 @@ class TaskResult {
/// Constructs a successful result using JSON data stored in a file. /// Constructs a successful result using JSON data stored in a file.
factory TaskResult.successFromFile(File file, factory TaskResult.successFromFile(File file,
{List<String> benchmarkScoreKeys}) { {List<String> benchmarkScoreKeys}) {
return new TaskResult.success(JSON.decode(file.readAsStringSync()), return new TaskResult.success(json.decode(file.readAsStringSync()),
benchmarkScoreKeys: benchmarkScoreKeys); benchmarkScoreKeys: benchmarkScoreKeys);
} }
......
...@@ -238,13 +238,13 @@ Future<int> exec( ...@@ -238,13 +238,13 @@ Future<int> exec(
final Completer<Null> stdoutDone = new Completer<Null>(); final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>(); final Completer<Null> stderrDone = new Completer<Null>();
process.stdout process.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('stdout: $line'); print('stdout: $line');
}, onDone: () { stdoutDone.complete(); }); }, onDone: () { stdoutDone.complete(); });
process.stderr process.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('stderr: $line'); print('stderr: $line');
...@@ -274,14 +274,14 @@ Future<String> eval( ...@@ -274,14 +274,14 @@ Future<String> eval(
final Completer<Null> stdoutDone = new Completer<Null>(); final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>(); final Completer<Null> stderrDone = new Completer<Null>();
process.stdout process.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('stdout: $line'); print('stdout: $line');
output.writeln(line); output.writeln(line);
}, onDone: () { stdoutDone.complete(); }); }, onDone: () { stdoutDone.complete(); });
process.stderr process.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('stderr: $line'); print('stderr: $line');
......
...@@ -50,7 +50,7 @@ class GalleryTransitionTest { ...@@ -50,7 +50,7 @@ class GalleryTransitionTest {
// Route paths contains slashes, which Firebase doesn't accept in keys, so we // Route paths contains slashes, which Firebase doesn't accept in keys, so we
// remove them. // remove them.
final Map<String, List<int>> original = JSON.decode(file( final Map<String, List<int>> original = json.decode(file(
'${galleryDirectory.path}/build/transition_durations.timeline.json') '${galleryDirectory.path}/build/transition_durations.timeline.json')
.readAsStringSync()); .readAsStringSync());
final Map<String, List<int>> transitions = <String, List<int>>{}; final Map<String, List<int>> transitions = <String, List<int>>{};
...@@ -58,7 +58,7 @@ class GalleryTransitionTest { ...@@ -58,7 +58,7 @@ class GalleryTransitionTest {
transitions[key.replaceAll('/', '')] = original[key]; transitions[key.replaceAll('/', '')] = original[key];
} }
final Map<String, dynamic> summary = JSON.decode(file('${galleryDirectory.path}/build/transitions.timeline_summary.json').readAsStringSync()); final Map<String, dynamic> summary = json.decode(file('${galleryDirectory.path}/build/transitions.timeline_summary.json').readAsStringSync());
final Map<String, dynamic> data = <String, dynamic>{ final Map<String, dynamic> data = <String, dynamic>{
'transitions': transitions, 'transitions': transitions,
......
...@@ -48,7 +48,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) { ...@@ -48,7 +48,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
final Completer<Null> stdoutDone = new Completer<Null>(); final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>(); final Completer<Null> stderrDone = new Completer<Null>();
process.stdout process.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
if (line.contains('\] Reloaded ')) { if (line.contains('\] Reloaded ')) {
...@@ -74,7 +74,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) { ...@@ -74,7 +74,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
stdoutDone.complete(); stdoutDone.complete();
}); });
process.stderr process.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('stderr: $line'); print('stderr: $line');
...@@ -86,7 +86,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) { ...@@ -86,7 +86,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
<Future<Null>>[stdoutDone.future, stderrDone.future]); <Future<Null>>[stdoutDone.future, stderrDone.future]);
await process.exitCode; await process.exitCode;
twoReloadsData = JSON.decode(benchmarkFile.readAsStringSync()); twoReloadsData = json.decode(benchmarkFile.readAsStringSync());
} }
benchmarkFile.deleteSync(); benchmarkFile.deleteSync();
...@@ -101,7 +101,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) { ...@@ -101,7 +101,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
final Completer<Null> stdoutDone = new Completer<Null>(); final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>(); final Completer<Null> stderrDone = new Completer<Null>();
process.stdout process.stdout
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
if (line.contains('\] Reloaded ')) { if (line.contains('\] Reloaded ')) {
...@@ -112,7 +112,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) { ...@@ -112,7 +112,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
stdoutDone.complete(); stdoutDone.complete();
}); });
process.stderr process.stderr
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
print('stderr: $line'); print('stderr: $line');
...@@ -125,7 +125,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) { ...@@ -125,7 +125,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
await process.exitCode; await process.exitCode;
freshRestartReloadsData = freshRestartReloadsData =
JSON.decode(benchmarkFile.readAsStringSync()); json.decode(benchmarkFile.readAsStringSync());
} }
}); });
}); });
......
...@@ -132,7 +132,7 @@ Future<Map<String, double>> _readJsonResults(Process process) { ...@@ -132,7 +132,7 @@ Future<Map<String, double>> _readJsonResults(Process process) {
jsonStarted = false; jsonStarted = false;
processWasKilledIntentionally = true; processWasKilledIntentionally = true;
process.kill(ProcessSignal.SIGINT); // flutter run doesn't quit automatically process.kill(ProcessSignal.SIGINT); // flutter run doesn't quit automatically
completer.complete(JSON.decode(jsonBuf.toString())); completer.complete(json.decode(jsonBuf.toString()));
return; return;
} }
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:async'; import 'dart:async';
import 'dart:convert' show JSON; import 'dart:convert' show json;
import 'dart:io'; import 'dart:io';
import '../framework/adb.dart'; import '../framework/adb.dart';
...@@ -121,7 +121,7 @@ class StartupTest { ...@@ -121,7 +121,7 @@ class StartupTest {
'-d', '-d',
deviceId, deviceId,
]).timeout(_startupTimeout); ]).timeout(_startupTimeout);
final Map<String, dynamic> data = JSON.decode(file('$testDirectory/build/start_up_info.json').readAsStringSync()); final Map<String, dynamic> data = json.decode(file('$testDirectory/build/start_up_info.json').readAsStringSync());
if (!reportMetrics) if (!reportMetrics)
return new TaskResult.success(data); return new TaskResult.success(data);
...@@ -161,7 +161,7 @@ class PerfTest { ...@@ -161,7 +161,7 @@ class PerfTest {
'-d', '-d',
deviceId, deviceId,
]); ]);
final Map<String, dynamic> data = JSON.decode(file('$testDirectory/build/$timelineFileName.timeline_summary.json').readAsStringSync()); final Map<String, dynamic> data = json.decode(file('$testDirectory/build/$timelineFileName.timeline_summary.json').readAsStringSync());
if (data['frame_count'] < 5) { if (data['frame_count'] < 5) {
return new TaskResult.failure( return new TaskResult.failure(
......
...@@ -65,7 +65,7 @@ class Upload { ...@@ -65,7 +65,7 @@ class Upload {
} else { } else {
// TODO(hansmuller): only retry on 5xx and 429 responses // TODO(hansmuller): only retry on 5xx and 429 responses
logMessage('Request to save "$name" (length ${content.length}) failed with status ${response.statusCode}, will retry'); logMessage('Request to save "$name" (length ${content.length}) failed with status ${response.statusCode}, will retry');
logMessage(await response.transform(UTF8.decoder).join()); logMessage(await response.transform(utf8.decoder).join());
} }
return response.statusCode == HttpStatus.OK; return response.statusCode == HttpStatus.OK;
} on TimeoutException catch (_) { } on TimeoutException catch (_) {
......
...@@ -59,15 +59,15 @@ class _TestAppState extends State<TestApp> { ...@@ -59,15 +59,15 @@ class _TestAppState extends State<TestApp> {
]); ]);
static final Float64List someFloat64s = static final Float64List someFloat64s =
new Float64List.fromList(<double>[ new Float64List.fromList(<double>[
double.NAN, double.nan,
double.NEGATIVE_INFINITY, double.negativeInfinity,
-double.MAX_FINITE, -double.maxFinite,
-double.MIN_POSITIVE, -double.minPositive,
-0.0, -0.0,
0.0, 0.0,
double.MIN_POSITIVE, double.minPositive,
double.MAX_FINITE, double.maxFinite,
double.INFINITY, double.infinity,
]); ]);
static final List<TestStep> steps = <TestStep>[ static final List<TestStep> steps = <TestStep>[
() => methodCallJsonSuccessHandshake(null), () => methodCallJsonSuccessHandshake(null),
......
...@@ -18,6 +18,6 @@ void main() { ...@@ -18,6 +18,6 @@ void main() {
test('check that we are in normal mode', () async { test('check that we are in normal mode', () async {
expect(await driver.requestData('status'), 'log: paint'); expect(await driver.requestData('status'), 'log: paint');
await driver.waitForAbsent(find.byType('PerformanceOverlay'), timeout: Duration.ZERO); await driver.waitForAbsent(find.byType('PerformanceOverlay'), timeout: Duration.zero);
}); });
} }
...@@ -18,6 +18,6 @@ void main() { ...@@ -18,6 +18,6 @@ void main() {
test('check that we are showing the performance overlay', () async { test('check that we are showing the performance overlay', () async {
await driver.requestData('status'); // force a reassemble await driver.requestData('status'); // force a reassemble
await driver.waitFor(find.byType('PerformanceOverlay'), timeout: Duration.ZERO); await driver.waitFor(find.byType('PerformanceOverlay'), timeout: Duration.zero);
}); });
} }
...@@ -53,7 +53,7 @@ class IconSampleRowState extends State<IconSampleRow> with SingleTickerProviderS ...@@ -53,7 +53,7 @@ class IconSampleRowState extends State<IconSampleRow> with SingleTickerProviderS
title: new Text(widget.sample.description), title: new Text(widget.sample.description),
subtitle: new Slider( subtitle: new Slider(
value: progress.value, value: progress.value,
onChanged: (double v) { progress.animateTo(v, duration: Duration.ZERO); }, onChanged: (double v) { progress.animateTo(v, duration: Duration.zero); },
), ),
); );
} }
......
...@@ -151,7 +151,7 @@ class DashOutlineCirclePainter extends CustomPainter { ...@@ -151,7 +151,7 @@ class DashOutlineCirclePainter extends CustomPainter {
const DashOutlineCirclePainter(); const DashOutlineCirclePainter();
static const int segments = 17; static const int segments = 17;
static const double deltaTheta = math.PI * 2 / segments; // radians static const double deltaTheta = math.pi * 2 / segments; // radians
static const double segmentArc = deltaTheta / 2.0; // radians static const double segmentArc = deltaTheta / 2.0; // radians
static const double startOffset = 1.0; // radians static const double startOffset = 1.0; // radians
...@@ -164,7 +164,7 @@ class DashOutlineCirclePainter extends CustomPainter { ...@@ -164,7 +164,7 @@ class DashOutlineCirclePainter extends CustomPainter {
..strokeWidth = radius / 10.0; ..strokeWidth = radius / 10.0;
final Path path = new Path(); final Path path = new Path();
final Rect box = Offset.zero & size; final Rect box = Offset.zero & size;
for (double theta = 0.0; theta < math.PI * 2.0; theta += deltaTheta) for (double theta = 0.0; theta < math.pi * 2.0; theta += deltaTheta)
path.addArc(box, theta + startOffset, segmentArc); path.addArc(box, theta + startOffset, segmentArc);
canvas.drawPath(path, paint); canvas.drawPath(path, paint);
} }
......
...@@ -340,7 +340,7 @@ void printStream(Stream<List<int>> stream, { String prefix: '', List<Pattern> fi ...@@ -340,7 +340,7 @@ void printStream(Stream<List<int>> stream, { String prefix: '', List<Pattern> fi
assert(prefix != null); assert(prefix != null);
assert(filter != null); assert(filter != null);
stream stream
.transform(UTF8.decoder) .transform(utf8.decoder)
.transform(const LineSplitter()) .transform(const LineSplitter())
.listen((String line) { .listen((String line) {
if (!filter.any((Pattern pattern) => line.contains(pattern))) if (!filter.any((Pattern pattern) => line.contains(pattern)))
......
...@@ -85,7 +85,7 @@ Future<Null> main(List<String> rawArgs) async { ...@@ -85,7 +85,7 @@ Future<Null> main(List<String> rawArgs) async {
buffer.writeln('const Map<String, dynamic> dateSymbols = const <String, dynamic> {'); buffer.writeln('const Map<String, dynamic> dateSymbols = const <String, dynamic> {');
symbolFiles.forEach((String locale, File data) { symbolFiles.forEach((String locale, File data) {
if (materialLocales.contains(locale)) if (materialLocales.contains(locale))
buffer.writeln(_jsonToMapEntry(locale, JSON.decode(data.readAsStringSync()))); buffer.writeln(_jsonToMapEntry(locale, json.decode(data.readAsStringSync())));
}); });
buffer.writeln('};'); buffer.writeln('};');
...@@ -94,7 +94,7 @@ Future<Null> main(List<String> rawArgs) async { ...@@ -94,7 +94,7 @@ Future<Null> main(List<String> rawArgs) async {
buffer.writeln('const Map<String, Map<String, String>> datePatterns = const <String, Map<String, String>> {'); buffer.writeln('const Map<String, Map<String, String>> datePatterns = const <String, Map<String, String>> {');
patternFiles.forEach((String locale, File data) { patternFiles.forEach((String locale, File data) {
if (materialLocales.contains(locale)) { if (materialLocales.contains(locale)) {
final Map<String, dynamic> patterns = JSON.decode(data.readAsStringSync()); final Map<String, dynamic> patterns = json.decode(data.readAsStringSync());
buffer.writeln("'$locale': const <String, String>{"); buffer.writeln("'$locale': const <String, String>{");
patterns.forEach((String key, dynamic value) { patterns.forEach((String key, dynamic value) {
assert(value is String); assert(value is String);
......
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
// dart dev/tools/gen_localizations.dart --overwrite // dart dev/tools/gen_localizations.dart --overwrite
// ``` // ```
import 'dart:convert' show JSON; import 'dart:convert' show json;
import 'dart:io'; import 'dart:io';
import 'package:path/path.dart' as pathlib; import 'package:path/path.dart' as pathlib;
...@@ -234,7 +234,7 @@ void processBundle(File file, String locale) { ...@@ -234,7 +234,7 @@ void processBundle(File file, String locale) {
localeToResourceAttributes[locale] ??= <String, dynamic>{}; localeToResourceAttributes[locale] ??= <String, dynamic>{};
final Map<String, String> resources = localeToResources[locale]; final Map<String, String> resources = localeToResources[locale];
final Map<String, dynamic> attributes = localeToResourceAttributes[locale]; final Map<String, dynamic> attributes = localeToResourceAttributes[locale];
final Map<String, dynamic> bundle = JSON.decode(file.readAsStringSync()); final Map<String, dynamic> bundle = json.decode(file.readAsStringSync());
for (String key in bundle.keys) { for (String key in bundle.keys) {
// The ARB file resource "attributes" for foo are called @foo. // The ARB file resource "attributes" for foo are called @foo.
if (key.startsWith('@')) if (key.startsWith('@'))
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
import 'dart:convert' show JSON; import 'dart:convert' show json;
import 'dart:io'; import 'dart:io';
/// Sanity checking of the @foo metadata in the English translations, /// Sanity checking of the @foo metadata in the English translations,
...@@ -22,7 +22,7 @@ String validateEnglishLocalizations(File file) { ...@@ -22,7 +22,7 @@ String validateEnglishLocalizations(File file) {
return errorMessages.toString(); return errorMessages.toString();
} }
final Map<String, dynamic> bundle = JSON.decode(file.readAsStringSync()); final Map<String, dynamic> bundle = json.decode(file.readAsStringSync());
for (String atResourceId in bundle.keys) { for (String atResourceId in bundle.keys) {
if (!atResourceId.startsWith('@')) if (!atResourceId.startsWith('@'))
continue; continue;
......
...@@ -348,7 +348,7 @@ abstract class BindingBase { ...@@ -348,7 +348,7 @@ abstract class BindingBase {
/// extension method is called. The callback must return a [Future] /// extension method is called. The callback must return a [Future]
/// that either eventually completes to a return value in the form /// that either eventually completes to a return value in the form
/// of a name/value map where the values can all be converted to /// of a name/value map where the values can all be converted to
/// JSON using `json.encode()` (see [JsonCodec.encode]), or fails. In case of failure, the /// JSON using `json.encode()` (see [JsonEncoder]), or fails. In case of failure, the
/// failure is reported to the remote caller and is dumped to the /// failure is reported to the remote caller and is dumped to the
/// logs. /// logs.
/// ///
......
...@@ -140,9 +140,10 @@ class TestRecordingPaintingContext implements PaintingContext { ...@@ -140,9 +140,10 @@ class TestRecordingPaintingContext implements PaintingContext {
} }
class _MethodCall implements Invocation { class _MethodCall implements Invocation {
_MethodCall(this._name, [ this._arguments = const <dynamic>[] ]); _MethodCall(this._name, [ this._arguments = const <dynamic>[], this._typeArguments = const <Type> []]);
final Symbol _name; final Symbol _name;
final List<dynamic> _arguments; final List<dynamic> _arguments;
final List<Type> _typeArguments;
@override @override
bool get isAccessor => false; bool get isAccessor => false;
@override @override
...@@ -157,6 +158,8 @@ class _MethodCall implements Invocation { ...@@ -157,6 +158,8 @@ class _MethodCall implements Invocation {
Map<Symbol, dynamic> get namedArguments => <Symbol, dynamic>{}; Map<Symbol, dynamic> get namedArguments => <Symbol, dynamic>{};
@override @override
List<dynamic> get positionalArguments => _arguments; List<dynamic> get positionalArguments => _arguments;
@override
List<Type> get typeArguments => _typeArguments;
} }
String _valueName(Object value) { String _valueName(Object value) {
......
...@@ -45,10 +45,10 @@ class TestPointer { ...@@ -45,10 +45,10 @@ class TestPointer {
/// Create a [PointerDownEvent] at the given location. /// Create a [PointerDownEvent] at the given location.
/// ///
/// By default, the time stamp on the event is [Duration.ZERO]. You /// By default, the time stamp on the event is [Duration.zero]. You
/// can give a specific time stamp by passing the `timeStamp` /// can give a specific time stamp by passing the `timeStamp`
/// argument. /// argument.
PointerDownEvent down(Offset newLocation, { Duration timeStamp: Duration.ZERO }) { PointerDownEvent down(Offset newLocation, { Duration timeStamp: Duration.zero }) {
assert(!isDown); assert(!isDown);
_isDown = true; _isDown = true;
_location = newLocation; _location = newLocation;
...@@ -61,10 +61,10 @@ class TestPointer { ...@@ -61,10 +61,10 @@ class TestPointer {
/// Create a [PointerMoveEvent] to the given location. /// Create a [PointerMoveEvent] to the given location.
/// ///
/// By default, the time stamp on the event is [Duration.ZERO]. You /// By default, the time stamp on the event is [Duration.zero]. You
/// can give a specific time stamp by passing the `timeStamp` /// can give a specific time stamp by passing the `timeStamp`
/// argument. /// argument.
PointerMoveEvent move(Offset newLocation, { Duration timeStamp: Duration.ZERO }) { PointerMoveEvent move(Offset newLocation, { Duration timeStamp: Duration.zero }) {
assert(isDown); assert(isDown);
final Offset delta = newLocation - location; final Offset delta = newLocation - location;
_location = newLocation; _location = newLocation;
...@@ -78,12 +78,12 @@ class TestPointer { ...@@ -78,12 +78,12 @@ class TestPointer {
/// Create a [PointerUpEvent]. /// Create a [PointerUpEvent].
/// ///
/// By default, the time stamp on the event is [Duration.ZERO]. You /// By default, the time stamp on the event is [Duration.zero]. You
/// can give a specific time stamp by passing the `timeStamp` /// can give a specific time stamp by passing the `timeStamp`
/// argument. /// argument.
/// ///
/// The object is no longer usable after this method has been called. /// The object is no longer usable after this method has been called.
PointerUpEvent up({ Duration timeStamp: Duration.ZERO }) { PointerUpEvent up({ Duration timeStamp: Duration.zero }) {
assert(isDown); assert(isDown);
_isDown = false; _isDown = false;
return new PointerUpEvent( return new PointerUpEvent(
...@@ -95,12 +95,12 @@ class TestPointer { ...@@ -95,12 +95,12 @@ class TestPointer {
/// Create a [PointerCancelEvent]. /// Create a [PointerCancelEvent].
/// ///
/// By default, the time stamp on the event is [Duration.ZERO]. You /// By default, the time stamp on the event is [Duration.zero]. You
/// can give a specific time stamp by passing the `timeStamp` /// can give a specific time stamp by passing the `timeStamp`
/// argument. /// argument.
/// ///
/// The object is no longer usable after this method has been called. /// The object is no longer usable after this method has been called.
PointerCancelEvent cancel({ Duration timeStamp: Duration.ZERO }) { PointerCancelEvent cancel({ Duration timeStamp: Duration.zero }) {
assert(isDown); assert(isDown);
_isDown = false; _isDown = false;
return new PointerCancelEvent( return new PointerCancelEvent(
...@@ -163,13 +163,13 @@ class TestGesture { ...@@ -163,13 +163,13 @@ class TestGesture {
final TestPointer _pointer; final TestPointer _pointer;
/// Send a move event moving the pointer by the given offset. /// Send a move event moving the pointer by the given offset.
Future<Null> moveBy(Offset offset, { Duration timeStamp: Duration.ZERO }) { Future<Null> moveBy(Offset offset, { Duration timeStamp: Duration.zero }) {
assert(_pointer._isDown); assert(_pointer._isDown);
return moveTo(_pointer.location + offset, timeStamp: timeStamp); return moveTo(_pointer.location + offset, timeStamp: timeStamp);
} }
/// Send a move event moving the pointer to the given location. /// Send a move event moving the pointer to the given location.
Future<Null> moveTo(Offset location, { Duration timeStamp: Duration.ZERO }) { Future<Null> moveTo(Offset location, { Duration timeStamp: Duration.zero }) {
return TestAsyncUtils.guard(() { return TestAsyncUtils.guard(() {
assert(_pointer._isDown); assert(_pointer._isDown);
return _dispatcher(_pointer.move(location, timeStamp: timeStamp), _result); return _dispatcher(_pointer.move(location, timeStamp: timeStamp), _result);
......
...@@ -243,9 +243,9 @@ class WidgetTester extends WidgetController implements HitTestDispatcher, Ticker ...@@ -243,9 +243,9 @@ class WidgetTester extends WidgetController implements HitTestDispatcher, Ticker
Duration timeout = const Duration(minutes: 10), Duration timeout = const Duration(minutes: 10),
]) { ]) {
assert(duration != null); assert(duration != null);
assert(duration > Duration.ZERO); assert(duration > Duration.zero);
assert(timeout != null); assert(timeout != null);
assert(timeout > Duration.ZERO); assert(timeout > Duration.zero);
assert(() { assert(() {
final WidgetsBinding binding = this.binding; final WidgetsBinding binding = this.binding;
if (binding is LiveTestWidgetsFlutterBinding && if (binding is LiveTestWidgetsFlutterBinding &&
......
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