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() {
fail('Expected exactly one semantics event, got ${semanticsEvents.length}');
final Duration semanticsTreeCreation = semanticsEvents.first.duration;
final String json = JSON.encode(<String, dynamic>{'initialSemanticsTreeCreation': semanticsTreeCreation.inMilliseconds});
new File(p.join(testOutputsDirectory, 'complex_layout_semantics_perf.json')).writeAsStringSync(json);
final String jsonEncoded = json.encode(<String, dynamic>{'initialSemanticsTreeCreation': semanticsTreeCreation.inMilliseconds});
new File(p.join(testOutputsDirectory, 'complex_layout_semantics_perf.json')).writeAsStringSync(jsonEncoded);
});
});
}
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'dart:convert' show JSON;
import 'dart:convert' show json;
import 'package:meta/meta.dart';
......@@ -54,7 +54,7 @@ class BenchmarkResultPrinter {
for (_BenchmarkResult result in _results) {
results[result.name] = result.value;
}
return JSON.encode(results);
return json.encode(results);
}
String _printPlainText() {
......
......@@ -172,7 +172,7 @@ dependencies:
workingDirectory: temp.path,
);
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...')
errors.removeAt(0);
if (errors.first.startsWith('Running "flutter packages get" in '))
......
......@@ -170,7 +170,7 @@ class ProcessRunner {
throw new ProcessRunnerException(
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, {
final Future<List<List<int>>> savedStderr = process.stderr.toList();
final int exitCode = await process.exitCode;
final EvalResult result = new EvalResult(
stdout: UTF8.decode((await savedStdout).expand((List<int> ints) => ints).toList()),
stderr: UTF8.decode((await savedStderr).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()),
);
if (exitCode != 0) {
......@@ -341,8 +341,8 @@ Future<Null> _runCommand(String executable, List<String> arguments, {
final int exitCode = await process.exitCode;
if ((exitCode == 0) == expectFailure) {
if (!printOutput) {
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 savedStdout).expand((List<int> ints) => ints).toList()));
print(utf8.decode((await savedStderr).expand((List<int> ints) => ints).toList()));
}
print(
'$red━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━$reset\n'
......
......@@ -30,7 +30,7 @@ void main() {
);
final StreamController<String> stdout = new StreamController<String>.broadcast();
run.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('run:stdout: $line');
......@@ -44,7 +44,7 @@ void main() {
}
});
run.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
stderr.writeln('run:stderr: $line');
......@@ -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'],
);
drive.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('drive:stdout: $line');
});
drive.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
stderr.writeln('drive:stderr: $line');
......
......@@ -21,7 +21,7 @@ Future<Null> main() async {
int publicMembers = 0;
int otherErrors = 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');
if (entry.startsWith('[lint] Document all public members')) {
publicMembers += 1;
......@@ -33,7 +33,7 @@ Future<Null> main() async {
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');
if (entry == 'Building flutter tool...') {
// ignore this line
......
......@@ -37,7 +37,7 @@ void main() {
<String>['run', '--verbose', '-d', device.deviceId, '--route', '/smuggle-it', 'lib/route.dart'],
);
run.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('run:stdout: $line');
......@@ -50,7 +50,7 @@ void main() {
}
});
run.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
stderr.writeln('run:stderr: $line');
......@@ -65,13 +65,13 @@ void main() {
<String>['drive', '--use-existing-app', 'http://127.0.0.1:$vmServicePort/', '--no-keep-app-running', 'lib/route.dart'],
);
drive.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('drive:stdout: $line');
});
drive.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
stderr.writeln('drive:stderr: $line');
......
......@@ -17,7 +17,7 @@ void main() {
Map<String, dynamic> parseFlutterResponse(String line) {
if (line.startsWith('[') && line.endsWith(']')) {
try {
return JSON.decode(line)[0];
return json.decode(line)[0];
} catch (e) {
// Not valid JSON, so likely some other output that was surrounded by [brackets]
return null;
......@@ -27,7 +27,7 @@ void main() {
}
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 {
......@@ -99,9 +99,9 @@ void main() {
'method': method,
'params': params
};
final String json = JSON.encode(<Map<String, dynamic>>[req]);
print('run:stdin: $json');
run.stdin.writeln(json);
final String jsonEncoded = json.encode(<Map<String, dynamic>>[req]);
print('run:stdin: $jsonEncoded');
run.stdin.writeln(jsonEncoded);
final Map<String, dynamic> result = await response.future;
responseSubscription.cancel();
return result;
......
......@@ -29,7 +29,7 @@ void main() {
<String>['run', '--verbose', '-d', device.deviceId, 'lib/main.dart'],
);
run.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('run:stdout: $line');
......@@ -42,7 +42,7 @@ void main() {
}
});
run.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
stderr.writeln('run:stderr: $line');
......
......@@ -53,7 +53,7 @@ Future<Null> main() async {
workingDirectory: flutterDirectory.path,
);
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)));
final int gitExitCode = await git.exitCode;
if (gitExitCode != 0)
......
......@@ -67,7 +67,7 @@ class _TaskRunner {
? new Duration(minutes: int.parse(parameters['timeoutInMinutes']))
: _kDefaultTaskTimeout;
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',
(String method, Map<String, String> parameters) async {
......@@ -164,7 +164,7 @@ class TaskResult {
/// Constructs a successful result using JSON data stored in a file.
factory TaskResult.successFromFile(File file,
{List<String> benchmarkScoreKeys}) {
return new TaskResult.success(JSON.decode(file.readAsStringSync()),
return new TaskResult.success(json.decode(file.readAsStringSync()),
benchmarkScoreKeys: benchmarkScoreKeys);
}
......
......@@ -238,13 +238,13 @@ Future<int> exec(
final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>();
process.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('stdout: $line');
}, onDone: () { stdoutDone.complete(); });
process.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('stderr: $line');
......@@ -274,14 +274,14 @@ Future<String> eval(
final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>();
process.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('stdout: $line');
output.writeln(line);
}, onDone: () { stdoutDone.complete(); });
process.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('stderr: $line');
......
......@@ -50,7 +50,7 @@ class GalleryTransitionTest {
// Route paths contains slashes, which Firebase doesn't accept in keys, so we
// 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')
.readAsStringSync());
final Map<String, List<int>> transitions = <String, List<int>>{};
......@@ -58,7 +58,7 @@ class GalleryTransitionTest {
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>{
'transitions': transitions,
......
......@@ -48,7 +48,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>();
process.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
if (line.contains('\] Reloaded ')) {
......@@ -74,7 +74,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
stdoutDone.complete();
});
process.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('stderr: $line');
......@@ -86,7 +86,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
<Future<Null>>[stdoutDone.future, stderrDone.future]);
await process.exitCode;
twoReloadsData = JSON.decode(benchmarkFile.readAsStringSync());
twoReloadsData = json.decode(benchmarkFile.readAsStringSync());
}
benchmarkFile.deleteSync();
......@@ -101,7 +101,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
final Completer<Null> stdoutDone = new Completer<Null>();
final Completer<Null> stderrDone = new Completer<Null>();
process.stdout
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
if (line.contains('\] Reloaded ')) {
......@@ -112,7 +112,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
stdoutDone.complete();
});
process.stderr
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
print('stderr: $line');
......@@ -125,7 +125,7 @@ TaskFunction createHotModeTest({ bool isPreviewDart2: false }) {
await process.exitCode;
freshRestartReloadsData =
JSON.decode(benchmarkFile.readAsStringSync());
json.decode(benchmarkFile.readAsStringSync());
}
});
});
......
......@@ -132,7 +132,7 @@ Future<Map<String, double>> _readJsonResults(Process process) {
jsonStarted = false;
processWasKilledIntentionally = true;
process.kill(ProcessSignal.SIGINT); // flutter run doesn't quit automatically
completer.complete(JSON.decode(jsonBuf.toString()));
completer.complete(json.decode(jsonBuf.toString()));
return;
}
......
......@@ -3,7 +3,7 @@
// found in the LICENSE file.
import 'dart:async';
import 'dart:convert' show JSON;
import 'dart:convert' show json;
import 'dart:io';
import '../framework/adb.dart';
......@@ -121,7 +121,7 @@ class StartupTest {
'-d',
deviceId,
]).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)
return new TaskResult.success(data);
......@@ -161,7 +161,7 @@ class PerfTest {
'-d',
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) {
return new TaskResult.failure(
......
......@@ -65,7 +65,7 @@ class Upload {
} else {
// 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(await response.transform(UTF8.decoder).join());
logMessage(await response.transform(utf8.decoder).join());
}
return response.statusCode == HttpStatus.OK;
} on TimeoutException catch (_) {
......
......@@ -59,15 +59,15 @@ class _TestAppState extends State<TestApp> {
]);
static final Float64List someFloat64s =
new Float64List.fromList(<double>[
double.NAN,
double.NEGATIVE_INFINITY,
-double.MAX_FINITE,
-double.MIN_POSITIVE,
double.nan,
double.negativeInfinity,
-double.maxFinite,
-double.minPositive,
-0.0,
0.0,
double.MIN_POSITIVE,
double.MAX_FINITE,
double.INFINITY,
double.minPositive,
double.maxFinite,
double.infinity,
]);
static final List<TestStep> steps = <TestStep>[
() => methodCallJsonSuccessHandshake(null),
......
......@@ -18,6 +18,6 @@ void main() {
test('check that we are in normal mode', () async {
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() {
test('check that we are showing the performance overlay', () async {
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
title: new Text(widget.sample.description),
subtitle: new Slider(
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 {
const DashOutlineCirclePainter();
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 startOffset = 1.0; // radians
......@@ -164,7 +164,7 @@ class DashOutlineCirclePainter extends CustomPainter {
..strokeWidth = radius / 10.0;
final Path path = new Path();
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);
canvas.drawPath(path, paint);
}
......
......@@ -340,7 +340,7 @@ void printStream(Stream<List<int>> stream, { String prefix: '', List<Pattern> fi
assert(prefix != null);
assert(filter != null);
stream
.transform(UTF8.decoder)
.transform(utf8.decoder)
.transform(const LineSplitter())
.listen((String line) {
if (!filter.any((Pattern pattern) => line.contains(pattern)))
......
......@@ -85,7 +85,7 @@ Future<Null> main(List<String> rawArgs) async {
buffer.writeln('const Map<String, dynamic> dateSymbols = const <String, dynamic> {');
symbolFiles.forEach((String locale, File data) {
if (materialLocales.contains(locale))
buffer.writeln(_jsonToMapEntry(locale, JSON.decode(data.readAsStringSync())));
buffer.writeln(_jsonToMapEntry(locale, json.decode(data.readAsStringSync())));
});
buffer.writeln('};');
......@@ -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>> {');
patternFiles.forEach((String locale, File data) {
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>{");
patterns.forEach((String key, dynamic value) {
assert(value is String);
......
......@@ -37,7 +37,7 @@
// dart dev/tools/gen_localizations.dart --overwrite
// ```
import 'dart:convert' show JSON;
import 'dart:convert' show json;
import 'dart:io';
import 'package:path/path.dart' as pathlib;
......@@ -234,7 +234,7 @@ void processBundle(File file, String locale) {
localeToResourceAttributes[locale] ??= <String, dynamic>{};
final Map<String, String> resources = localeToResources[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) {
// The ARB file resource "attributes" for foo are called @foo.
if (key.startsWith('@'))
......
......@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
import 'dart:convert' show JSON;
import 'dart:convert' show json;
import 'dart:io';
/// Sanity checking of the @foo metadata in the English translations,
......@@ -22,7 +22,7 @@ String validateEnglishLocalizations(File file) {
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) {
if (!atResourceId.startsWith('@'))
continue;
......
......@@ -348,7 +348,7 @@ abstract class BindingBase {
/// extension method is called. The callback must return a [Future]
/// that either eventually completes to a return value in the form
/// 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
/// logs.
///
......
......@@ -140,9 +140,10 @@ class TestRecordingPaintingContext implements PaintingContext {
}
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 List<dynamic> _arguments;
final List<Type> _typeArguments;
@override
bool get isAccessor => false;
@override
......@@ -157,6 +158,8 @@ class _MethodCall implements Invocation {
Map<Symbol, dynamic> get namedArguments => <Symbol, dynamic>{};
@override
List<dynamic> get positionalArguments => _arguments;
@override
List<Type> get typeArguments => _typeArguments;
}
String _valueName(Object value) {
......
......@@ -45,10 +45,10 @@ class TestPointer {
/// 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`
/// argument.
PointerDownEvent down(Offset newLocation, { Duration timeStamp: Duration.ZERO }) {
PointerDownEvent down(Offset newLocation, { Duration timeStamp: Duration.zero }) {
assert(!isDown);
_isDown = true;
_location = newLocation;
......@@ -61,10 +61,10 @@ class TestPointer {
/// 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`
/// argument.
PointerMoveEvent move(Offset newLocation, { Duration timeStamp: Duration.ZERO }) {
PointerMoveEvent move(Offset newLocation, { Duration timeStamp: Duration.zero }) {
assert(isDown);
final Offset delta = newLocation - location;
_location = newLocation;
......@@ -78,12 +78,12 @@ class TestPointer {
/// 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`
/// argument.
///
/// 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);
_isDown = false;
return new PointerUpEvent(
......@@ -95,12 +95,12 @@ class TestPointer {
/// 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`
/// argument.
///
/// 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);
_isDown = false;
return new PointerCancelEvent(
......@@ -163,13 +163,13 @@ class TestGesture {
final TestPointer _pointer;
/// 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);
return moveTo(_pointer.location + offset, timeStamp: timeStamp);
}
/// 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(() {
assert(_pointer._isDown);
return _dispatcher(_pointer.move(location, timeStamp: timeStamp), _result);
......
......@@ -243,9 +243,9 @@ class WidgetTester extends WidgetController implements HitTestDispatcher, Ticker
Duration timeout = const Duration(minutes: 10),
]) {
assert(duration != null);
assert(duration > Duration.ZERO);
assert(duration > Duration.zero);
assert(timeout != null);
assert(timeout > Duration.ZERO);
assert(timeout > Duration.zero);
assert(() {
final WidgetsBinding binding = this.binding;
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