From bb4f4070f9dc146d89923878039516db34e650bd Mon Sep 17 00:00:00 2001 From: Alexandre Ardhuin Date: Thu, 31 Aug 2017 08:55:21 +0200 Subject: [PATCH] Prefer const constructors (#11853) * upgrade to linter-0.1.35 * re-enable lint prefer_const_constructors * address review comments --- analysis_options.yaml | 6 +- analysis_options_repo.yaml | 6 +- dev/devicelab/bin/tasks/commands_test.dart | 2 +- dev/integration_tests/flavors/lib/main.dart | 6 +- .../lib/src/system_navigation.dart | 2 +- .../lib/src/widgets/widget_inspector.dart | 2 +- .../flutter/test/cupertino/slider_test.dart | 4 +- packages/flutter/test/gestures/drag_test.dart | 2 +- .../test/material/button_bar_test.dart | 2 +- packages/flutter/test/material/chip_test.dart | 10 +- packages/flutter/test/material/page_test.dart | 4 +- .../test/material/popup_menu_test.dart | 2 +- .../flutter/test/material/scaffold_test.dart | 4 +- .../flutter/test/material/slider_test.dart | 6 +- .../test/painting/edge_insets_test.dart | 107 +++++++++--------- .../test/painting/fractional_offset_test.dart | 91 +++++++-------- .../flutter/test/rendering/flex_test.dart | 4 +- .../test/services/image_provider_test.dart | 3 +- .../test/widgets/directionality_test.dart | 9 +- .../test/widgets/localizations_test.dart | 6 +- packages/flutter/test/widgets/rtl_test.dart | 20 ++-- .../test/widgets/semantics_10_test.dart | 4 +- .../test/widgets/semantics_11_test.dart | 2 +- .../test/widgets/sliver_semantics_test.dart | 24 ++-- .../flutter_tools/test/ios/devices_test.dart | 2 +- 25 files changed, 172 insertions(+), 158 deletions(-) diff --git a/analysis_options.yaml b/analysis_options.yaml index a8b2e3e4f7..17d47a8d25 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -71,6 +71,7 @@ linter: # === style rules === - always_declare_return_types - always_put_control_body_on_new_line + # - always_put_required_named_parameters_first # we prefer having parameters in the same order as fields https://github.com/flutter/flutter/issues/10219 - always_require_non_null_named_parameters - always_specify_types - annotate_overrides @@ -108,9 +109,11 @@ linter: - package_prefixed_library_names # - parameter_assignments # we do this commonly - prefer_adjacent_string_concatenation + # - prefer_asserts_in_initializer_lists # not yet tested - prefer_collection_literals # - prefer_conditional_assignment # not yet tested - # - prefer_const_constructors # https://github.com/dart-lang/linter/issues/752 + - prefer_const_constructors + # - prefer_const_constructors_in_immutables # not yet tested # - prefer_constructors_over_static_methods # not yet tested - prefer_contains # - prefer_expression_function_bodies # conflicts with https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#consider-using--for-short-functions-and-methods @@ -122,6 +125,7 @@ linter: # - prefer_interpolation_to_compose_strings # not yet tested - prefer_is_empty - prefer_is_not_empty + # - prefer_single_quote_strings # not yet tested # - public_member_api_docs # this is the only difference from analysis_options_repo.yaml # - recursive_getters # https://github.com/dart-lang/linter/issues/452 - slash_for_doc_comments diff --git a/analysis_options_repo.yaml b/analysis_options_repo.yaml index d8159d8298..80f6c1c73d 100644 --- a/analysis_options_repo.yaml +++ b/analysis_options_repo.yaml @@ -65,6 +65,7 @@ linter: # === style rules === - always_declare_return_types - always_put_control_body_on_new_line + # - always_put_required_named_parameters_first # we prefer having parameters in the same order as fields https://github.com/flutter/flutter/issues/10219 - always_require_non_null_named_parameters - always_specify_types - annotate_overrides @@ -102,9 +103,11 @@ linter: - package_prefixed_library_names # - parameter_assignments # we do this commonly - prefer_adjacent_string_concatenation + # - prefer_asserts_in_initializer_lists # not yet tested - prefer_collection_literals # - prefer_conditional_assignment # not yet tested - # - prefer_const_constructors # https://github.com/dart-lang/linter/issues/752 + - prefer_const_constructors + # - prefer_const_constructors_in_immutables # not yet tested # - prefer_constructors_over_static_methods # not yet tested - prefer_contains # - prefer_expression_function_bodies # conflicts with https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#consider-using--for-short-functions-and-methods @@ -116,6 +119,7 @@ linter: # - prefer_interpolation_to_compose_strings # not yet tested - prefer_is_empty - prefer_is_not_empty + # - prefer_single_quote_strings # not yet tested - public_member_api_docs # this is the only difference from analysis_options_repo.yaml # - recursive_getters # https://github.com/dart-lang/linter/issues/452 - slash_for_doc_comments diff --git a/dev/devicelab/bin/tasks/commands_test.dart b/dev/devicelab/bin/tasks/commands_test.dart index f75a3d7083..8a0c890029 100644 --- a/dev/devicelab/bin/tasks/commands_test.dart +++ b/dev/devicelab/bin/tasks/commands_test.dart @@ -98,7 +98,7 @@ void main() { if (result != 0) throw 'Received unexpected exit code $result from run process.'; print('test: validating that the app has in fact closed...'); - await client.done.timeout(new Duration(seconds: 5)); + await client.done.timeout(const Duration(seconds: 5)); }); return new TaskResult.success(null); }); diff --git a/dev/integration_tests/flavors/lib/main.dart b/dev/integration_tests/flavors/lib/main.dart index 45ee469e80..afacffbe70 100644 --- a/dev/integration_tests/flavors/lib/main.dart +++ b/dev/integration_tests/flavors/lib/main.dart @@ -18,7 +18,7 @@ class _FlavorState extends State { @override void initState() { super.initState(); - new MethodChannel('flavor').invokeMethod('getFlavor').then((String flavor) { + const MethodChannel('flavor').invokeMethod('getFlavor').then((String flavor) { setState(() { _flavor = flavor; }); @@ -27,8 +27,8 @@ class _FlavorState extends State { @override Widget build(BuildContext context) { - return _flavor == null - ? new Text('Awaiting flavor...') + return _flavor == null + ? const Text('Awaiting flavor...') : new Text(_flavor, key: const ValueKey('flavor')); } } diff --git a/dev/integration_tests/platform_interaction/lib/src/system_navigation.dart b/dev/integration_tests/platform_interaction/lib/src/system_navigation.dart index 3a02b00bab..360bbc7615 100644 --- a/dev/integration_tests/platform_interaction/lib/src/system_navigation.dart +++ b/dev/integration_tests/platform_interaction/lib/src/system_navigation.dart @@ -16,7 +16,7 @@ Future systemNavigatorPop() { channel.setMessageHandler((String message) async { completer.complete( - new TestStepResult('System navigation pop', '', TestStatus.ok)); + const TestStepResult('System navigation pop', '', TestStatus.ok)); return ''; }); SystemNavigator.pop(); diff --git a/packages/flutter/lib/src/widgets/widget_inspector.dart b/packages/flutter/lib/src/widgets/widget_inspector.dart index 82d1eb3b54..26a631400b 100644 --- a/packages/flutter/lib/src/widgets/widget_inspector.dart +++ b/packages/flutter/lib/src/widgets/widget_inspector.dart @@ -318,7 +318,7 @@ class _RenderInspectorOverlay extends RenderBox { @override void performResize() { - size = constraints.constrain(new Size(double.INFINITY, double.INFINITY)); + size = constraints.constrain(const Size(double.INFINITY, double.INFINITY)); } @override diff --git a/packages/flutter/test/cupertino/slider_test.dart b/packages/flutter/test/cupertino/slider_test.dart index 46a1a6c7fd..595c7e29f4 100644 --- a/packages/flutter/test/cupertino/slider_test.dart +++ b/packages/flutter/test/cupertino/slider_test.dart @@ -181,9 +181,9 @@ void main() { )); // Disable slider - await tester.pumpWidget(new Directionality( + await tester.pumpWidget(const Directionality( textDirection: TextDirection.ltr, - child: new CupertinoSlider( + child: const CupertinoSlider( value: 0.5, onChanged: null, ), diff --git a/packages/flutter/test/gestures/drag_test.dart b/packages/flutter/test/gestures/drag_test.dart index 8d1e55c6f5..82c6453b43 100644 --- a/packages/flutter/test/gestures/drag_test.dart +++ b/packages/flutter/test/gestures/drag_test.dart @@ -253,7 +253,7 @@ void main() { tester.route(pointer.move(const Offset(30.0, 25.0), timeStamp: const Duration(milliseconds: 30))); tester.route(pointer.move(const Offset(40.0, 25.0), timeStamp: const Duration(milliseconds: 40))); tester.route(pointer.move(const Offset(50.0, 25.0), timeStamp: const Duration(milliseconds: 50))); - tester.route(new PointerMoveEvent( + tester.route(const PointerMoveEvent( pointer: 1, // Simulate a small synthesized wobble which would have slowed down the // horizontal velocity from 1 px/ms and introduced a slight vertical velocity. diff --git a/packages/flutter/test/material/button_bar_test.dart b/packages/flutter/test/material/button_bar_test.dart index f4f4226ad3..e7b5363604 100644 --- a/packages/flutter/test/material/button_bar_test.dart +++ b/packages/flutter/test/material/button_bar_test.dart @@ -8,7 +8,7 @@ import 'package:flutter_test/flutter_test.dart'; void main() { testWidgets('ButtonBar default control smoketest', (WidgetTester tester) async { await tester.pumpWidget( - new Directionality( + const Directionality( textDirection: TextDirection.ltr, child: const ButtonBar(), ), diff --git a/packages/flutter/test/material/chip_test.dart b/packages/flutter/test/material/chip_test.dart index 092e2f7b9e..aca551e9a1 100644 --- a/packages/flutter/test/material/chip_test.dart +++ b/packages/flutter/test/material/chip_test.dart @@ -178,13 +178,13 @@ void main() { }); testWidgets('Chip in row works ok', (WidgetTester tester) async { - final TextStyle style = new TextStyle(fontFamily: 'Ahem', fontSize: 10.0); + final TextStyle style = const TextStyle(fontFamily: 'Ahem', fontSize: 10.0); await tester.pumpWidget( new MaterialApp( home: new Material( child: new Row( children: [ - new Chip(label: new Text('Test'), labelStyle: style), + new Chip(label: const Text('Test'), labelStyle: style), ], ), ), @@ -197,7 +197,7 @@ void main() { home: new Material( child: new Row( children: [ - new Flexible(child: new Chip(label: new Text('Test'), labelStyle: style)), + new Flexible(child: new Chip(label: const Text('Test'), labelStyle: style)), ], ), ), @@ -210,7 +210,7 @@ void main() { home: new Material( child: new Row( children: [ - new Expanded(child: new Chip(label: new Text('Test'), labelStyle: style)), + new Expanded(child: new Chip(label: const Text('Test'), labelStyle: style)), ], ), ), @@ -228,7 +228,7 @@ void main() { child: new Center( child: new Chip( onDeleted: () { }, - label: new Text('ABC'), + label: const Text('ABC'), ), ), ); diff --git a/packages/flutter/test/material/page_test.dart b/packages/flutter/test/material/page_test.dart index f20eee06bb..d7944a836f 100644 --- a/packages/flutter/test/material/page_test.dart +++ b/packages/flutter/test/material/page_test.dart @@ -276,11 +276,11 @@ void main() { final Map routes = { '/': (BuildContext context) => new Material( child: new FlatButton( - child: new Text('PUSH'), + child: const Text('PUSH'), onPressed: () { Navigator.of(context).pushNamed('/b'); }, ), ), - '/b': (BuildContext context) => new Container(child: new Text('HELLO')), + '/b': (BuildContext context) => new Container(child: const Text('HELLO')), }; await tester.pumpWidget( new MaterialApp( diff --git a/packages/flutter/test/material/popup_menu_test.dart b/packages/flutter/test/material/popup_menu_test.dart index 8b6f03dad8..7ef41b14b6 100644 --- a/packages/flutter/test/material/popup_menu_test.dart +++ b/packages/flutter/test/material/popup_menu_test.dart @@ -110,7 +110,7 @@ void main() { icon: const Icon(Icons.view_carousel), itemBuilder: simplePopupMenuItemBuilder, ); - }, throwsA(new isInstanceOf())); + }, throwsA(const isInstanceOf())); }); testWidgets('PopupMenuButton creates IconButton when given an icon', (WidgetTester tester) async { diff --git a/packages/flutter/test/material/scaffold_test.dart b/packages/flutter/test/material/scaffold_test.dart index d8fa94bbf5..27446ddaa0 100644 --- a/packages/flutter/test/material/scaffold_test.dart +++ b/packages/flutter/test/material/scaffold_test.dart @@ -148,11 +148,11 @@ void main() { Widget build(TextDirection textDirection) { return new Directionality( textDirection: textDirection, - child: new MediaQuery( + child: const MediaQuery( data: const MediaQueryData( padding: const EdgeInsets.only(bottom: 200.0), ), - child: new Scaffold( + child: const Scaffold( floatingActionButton: const FloatingActionButton( onPressed: null, child: const Text('1'), diff --git a/packages/flutter/test/material/slider_test.dart b/packages/flutter/test/material/slider_test.dart index 3476f50495..ee8019265b 100644 --- a/packages/flutter/test/material/slider_test.dart +++ b/packages/flutter/test/material/slider_test.dart @@ -472,10 +472,10 @@ void main() { )); // Disable slider - await tester.pumpWidget(new Directionality( + await tester.pumpWidget(const Directionality( textDirection: TextDirection.ltr, - child: new Material( - child: new Slider( + child: const Material( + child: const Slider( value: 0.5, onChanged: null, ), diff --git a/packages/flutter/test/painting/edge_insets_test.dart b/packages/flutter/test/painting/edge_insets_test.dart index 76baaa3051..93331c3d74 100644 --- a/packages/flutter/test/painting/edge_insets_test.dart +++ b/packages/flutter/test/painting/edge_insets_test.dart @@ -52,57 +52,58 @@ void main() { }); test('EdgeInsets.resolve()', () { - expect(new EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(10.0, 20.0, 30.0, 40.0)); - expect(new EdgeInsetsDirectional.fromSTEB(99.0, 98.0, 97.0, 96.0).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(97.0, 98.0, 99.0, 96.0)); - expect(new EdgeInsetsDirectional.only(start: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(963.25, 0.0, 0.0, 0.0)); - expect(new EdgeInsetsDirectional.only(top: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(0.0, 963.25, 0.0, 0.0)); - expect(new EdgeInsetsDirectional.only(end: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(0.0, 0.0, 963.25, 0.0)); - expect(new EdgeInsetsDirectional.only(bottom: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(0.0, 0.0, 0.0, 963.25)); - expect(new EdgeInsetsDirectional.only(start: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(0.0, 0.0, 963.25, 0.0)); - expect(new EdgeInsetsDirectional.only(top: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(0.0, 963.25, 0.0, 0.0)); - expect(new EdgeInsetsDirectional.only(end: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(963.25, 0.0, 0.0, 0.0)); - expect(new EdgeInsetsDirectional.only(bottom: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(0.0, 0.0, 0.0, 963.25)); - expect(new EdgeInsetsDirectional.only(), new EdgeInsetsDirectional.only()); - expect(new EdgeInsetsDirectional.only(top: 1.0).hashCode, isNot(new EdgeInsetsDirectional.only(bottom: 1.0))); - expect(new EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), - new EdgeInsetsDirectional.fromSTEB(30.0, 20.0, 10.0, 40.0).resolve(TextDirection.rtl)); - expect(new EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), - isNot(new EdgeInsetsDirectional.fromSTEB(30.0, 20.0, 10.0, 40.0).resolve(TextDirection.ltr))); - expect(new EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), - isNot(new EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.rtl))); + expect(const EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(10.0, 20.0, 30.0, 40.0)); + expect(const EdgeInsetsDirectional.fromSTEB(99.0, 98.0, 97.0, 96.0).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(97.0, 98.0, 99.0, 96.0)); + expect(const EdgeInsetsDirectional.only(start: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(963.25, 0.0, 0.0, 0.0)); + expect(const EdgeInsetsDirectional.only(top: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(0.0, 963.25, 0.0, 0.0)); + expect(const EdgeInsetsDirectional.only(end: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(0.0, 0.0, 963.25, 0.0)); + expect(const EdgeInsetsDirectional.only(bottom: 963.25).resolve(TextDirection.ltr), const EdgeInsets.fromLTRB(0.0, 0.0, 0.0, 963.25)); + expect(const EdgeInsetsDirectional.only(start: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(0.0, 0.0, 963.25, 0.0)); + expect(const EdgeInsetsDirectional.only(top: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(0.0, 963.25, 0.0, 0.0)); + expect(const EdgeInsetsDirectional.only(end: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(963.25, 0.0, 0.0, 0.0)); + expect(const EdgeInsetsDirectional.only(bottom: 963.25).resolve(TextDirection.rtl), const EdgeInsets.fromLTRB(0.0, 0.0, 0.0, 963.25)); + expect(new EdgeInsetsDirectional.only(), new EdgeInsetsDirectional.only()); // ignore: prefer_const_constructors + expect(const EdgeInsetsDirectional.only(top: 1.0), isNot(const EdgeInsetsDirectional.only(bottom: 1.0))); + expect(const EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), + const EdgeInsetsDirectional.fromSTEB(30.0, 20.0, 10.0, 40.0).resolve(TextDirection.rtl)); + expect(const EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), + isNot(const EdgeInsetsDirectional.fromSTEB(30.0, 20.0, 10.0, 40.0).resolve(TextDirection.ltr))); + expect(const EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.ltr), + isNot(const EdgeInsetsDirectional.fromSTEB(10.0, 20.0, 30.0, 40.0).resolve(TextDirection.rtl))); }); test('EdgeInsets equality', () { - expect(new EdgeInsetsDirectional.only(top: 5.0, bottom: 7.0), new EdgeInsetsDirectional.only(top: 5.0, bottom: 7.0)); - expect(new EdgeInsets.only(top: 5.0, bottom: 7.0), new EdgeInsetsDirectional.only(top: 5.0, bottom: 7.0)); - expect(new EdgeInsetsDirectional.only(top: 5.0, bottom: 7.0), new EdgeInsets.only(top: 5.0, bottom: 7.0)); - expect(new EdgeInsets.only(top: 5.0, bottom: 7.0), new EdgeInsets.only(top: 5.0, bottom: 7.0)); - expect(new EdgeInsetsDirectional.only(start: 5.0), new EdgeInsetsDirectional.only(start: 5.0)); - expect(new EdgeInsets.only(left: 5.0), isNot(new EdgeInsetsDirectional.only(start: 5.0))); - expect(new EdgeInsetsDirectional.only(start: 5.0), isNot(new EdgeInsets.only(left: 5.0))); - expect(new EdgeInsets.only(left: 5.0), new EdgeInsets.only(left: 5.0)); - expect(new EdgeInsetsDirectional.only(end: 5.0), new EdgeInsetsDirectional.only(end: 5.0)); - expect(new EdgeInsets.only(right: 5.0), isNot(new EdgeInsetsDirectional.only(end: 5.0))); - expect(new EdgeInsetsDirectional.only(end: 5.0), isNot(new EdgeInsets.only(right: 5.0))); - expect(new EdgeInsets.only(right: 5.0), new EdgeInsets.only(right: 5.0)); - expect(new EdgeInsetsDirectional.only(end: 5.0).add(new EdgeInsets.only(right: 5.0)), new EdgeInsetsDirectional.only(end: 5.0).add(new EdgeInsets.only(right: 5.0))); - expect(new EdgeInsetsDirectional.only(end: 5.0).add(new EdgeInsets.only(right: 5.0)), isNot(new EdgeInsetsDirectional.only(end: 5.0).add(new EdgeInsets.only(left: 5.0)))); - expect(new EdgeInsetsDirectional.only(top: 1.0).add(new EdgeInsets.only(top: 2.0)), new EdgeInsetsDirectional.only(top: 3.0).add(new EdgeInsets.only(top: 0.0))); - expect(new EdgeInsetsDirectional.only(top: 1.0).add(new EdgeInsets.only(top: 2.0)), new EdgeInsets.only(top: 3.0).add(new EdgeInsetsDirectional.only(top: 0.0))); - expect(new EdgeInsetsDirectional.only(top: 1.0).add(new EdgeInsets.only(top: 2.0)), new EdgeInsetsDirectional.only(top: 3.0)); - expect(new EdgeInsetsDirectional.only(top: 1.0).add(new EdgeInsets.only(top: 2.0)), new EdgeInsets.only(top: 3.0)); + final double $5 = 5.0; // we want these instances to be separate instances so that we're not just checking with a single object + expect(new EdgeInsetsDirectional.only(top: $5, bottom: 7.0), new EdgeInsetsDirectional.only(top: $5, bottom: 7.0)); + expect(new EdgeInsets.only(top: $5, bottom: 7.0), new EdgeInsetsDirectional.only(top: $5, bottom: 7.0)); + expect(new EdgeInsetsDirectional.only(top: $5, bottom: 7.0), new EdgeInsets.only(top: $5, bottom: 7.0)); + expect(new EdgeInsets.only(top: $5, bottom: 7.0), new EdgeInsets.only(top: $5, bottom: 7.0)); + expect(new EdgeInsetsDirectional.only(start: $5), new EdgeInsetsDirectional.only(start: $5)); + expect(const EdgeInsets.only(left: 5.0), isNot(const EdgeInsetsDirectional.only(start: 5.0))); + expect(const EdgeInsetsDirectional.only(start: 5.0), isNot(const EdgeInsets.only(left: 5.0))); + expect(new EdgeInsets.only(left: $5), new EdgeInsets.only(left: $5)); + expect(new EdgeInsetsDirectional.only(end: $5), new EdgeInsetsDirectional.only(end: $5)); + expect(const EdgeInsets.only(right: 5.0), isNot(const EdgeInsetsDirectional.only(end: 5.0))); + expect(const EdgeInsetsDirectional.only(end: 5.0), isNot(const EdgeInsets.only(right: 5.0))); + expect(new EdgeInsets.only(right: $5), new EdgeInsets.only(right: $5)); + expect(const EdgeInsetsDirectional.only(end: 5.0).add(const EdgeInsets.only(right: 5.0)), const EdgeInsetsDirectional.only(end: 5.0).add(const EdgeInsets.only(right: 5.0))); + expect(const EdgeInsetsDirectional.only(end: 5.0).add(const EdgeInsets.only(right: 5.0)), isNot(const EdgeInsetsDirectional.only(end: 5.0).add(const EdgeInsets.only(left: 5.0)))); + expect(const EdgeInsetsDirectional.only(top: 1.0).add(const EdgeInsets.only(top: 2.0)), const EdgeInsetsDirectional.only(top: 3.0).add(const EdgeInsets.only(top: 0.0))); + expect(const EdgeInsetsDirectional.only(top: 1.0).add(const EdgeInsets.only(top: 2.0)), const EdgeInsets.only(top: 3.0).add(const EdgeInsetsDirectional.only(top: 0.0))); + expect(const EdgeInsetsDirectional.only(top: 1.0).add(const EdgeInsets.only(top: 2.0)), const EdgeInsetsDirectional.only(top: 3.0)); + expect(const EdgeInsetsDirectional.only(top: 1.0).add(const EdgeInsets.only(top: 2.0)), const EdgeInsets.only(top: 3.0)); }); test('EdgeInsetsGeometry.lerp(...)', () { - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(end: 10.0), null, 0.5), new EdgeInsetsDirectional.only(end: 5.0)); - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(start: 10.0), null, 0.5), new EdgeInsetsDirectional.only(start: 5.0)); - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(top: 10.0), null, 0.5), new EdgeInsetsDirectional.only(top: 5.0)); - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(bottom: 10.0), null, 0.5), new EdgeInsetsDirectional.only(bottom: 5.0)); - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(bottom: 10.0), EdgeInsetsDirectional.zero, 0.5), new EdgeInsetsDirectional.only(bottom: 5.0)); - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(bottom: 10.0), EdgeInsets.zero, 0.5), new EdgeInsetsDirectional.only(bottom: 5.0)); - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(start: 10.0), new EdgeInsets.only(left: 20.0), 0.5), new EdgeInsetsDirectional.only(start: 5.0).add(new EdgeInsets.only(left: 10.0))); - expect(EdgeInsetsGeometry.lerp(new EdgeInsetsDirectional.only(start: 0.0, bottom: 1.0), new EdgeInsetsDirectional.only(start: 1.0, bottom: 1.0).add(new EdgeInsets.only(right: 2.0, bottom: 0.0)), 0.5), new EdgeInsetsDirectional.only(start: 0.5).add(new EdgeInsets.only(right: 1.0, bottom: 1.0))); - expect(EdgeInsetsGeometry.lerp(new EdgeInsets.only(left: 0.0, bottom: 1.0), new EdgeInsetsDirectional.only(end: 1.0, bottom: 1.0).add(new EdgeInsets.only(right: 2.0, bottom: 0.0)), 0.5), new EdgeInsetsDirectional.only(start: 0.0, end: 0.5).add(new EdgeInsets.only(right: 1.0, bottom: 1.0))); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(end: 10.0), null, 0.5), const EdgeInsetsDirectional.only(end: 5.0)); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(start: 10.0), null, 0.5), const EdgeInsetsDirectional.only(start: 5.0)); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(top: 10.0), null, 0.5), const EdgeInsetsDirectional.only(top: 5.0)); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(bottom: 10.0), null, 0.5), const EdgeInsetsDirectional.only(bottom: 5.0)); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(bottom: 10.0), EdgeInsetsDirectional.zero, 0.5), const EdgeInsetsDirectional.only(bottom: 5.0)); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(bottom: 10.0), EdgeInsets.zero, 0.5), const EdgeInsetsDirectional.only(bottom: 5.0)); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(start: 10.0), const EdgeInsets.only(left: 20.0), 0.5), const EdgeInsetsDirectional.only(start: 5.0).add(const EdgeInsets.only(left: 10.0))); + expect(EdgeInsetsGeometry.lerp(const EdgeInsetsDirectional.only(start: 0.0, bottom: 1.0), const EdgeInsetsDirectional.only(start: 1.0, bottom: 1.0).add(const EdgeInsets.only(right: 2.0, bottom: 0.0)), 0.5), const EdgeInsetsDirectional.only(start: 0.5).add(const EdgeInsets.only(right: 1.0, bottom: 1.0))); + expect(EdgeInsetsGeometry.lerp(const EdgeInsets.only(left: 0.0, bottom: 1.0), const EdgeInsetsDirectional.only(end: 1.0, bottom: 1.0).add(const EdgeInsets.only(right: 2.0, bottom: 0.0)), 0.5), const EdgeInsetsDirectional.only(start: 0.0, end: 0.5).add(const EdgeInsets.only(right: 1.0, bottom: 1.0))); }); test('EdgeInsetsGeometry.lerp(normal, ...)', () { @@ -168,7 +169,7 @@ void main() { test('EdgeInsetsGeometry operators', () { final EdgeInsetsGeometry a = const EdgeInsetsDirectional.fromSTEB(1.0, 2.0, 3.0, 5.0).add(EdgeInsets.zero); - expect(a, isNot(new isInstanceOf())); + expect(a, isNot(const isInstanceOf())); expect(a * 2.0, const EdgeInsetsDirectional.fromSTEB(2.0, 4.0, 6.0, 10.0)); expect(a / 2.0, const EdgeInsetsDirectional.fromSTEB(0.5, 1.0, 1.5, 2.5)); expect(a % 2.0, const EdgeInsetsDirectional.fromSTEB(1.0, 0.0, 1.0, 1.0)); @@ -179,12 +180,12 @@ void main() { }); test('EdgeInsetsGeometry toString', () { - expect(new EdgeInsets.only().toString(), 'EdgeInsets.zero'); - expect(new EdgeInsets.only(top: 1.01, left: 1.01, right: 1.01, bottom: 1.01).toString(), 'EdgeInsets.all(1.0)'); - expect(new EdgeInsetsDirectional.only().toString(), 'EdgeInsets.zero'); - expect(new EdgeInsetsDirectional.only(start: 1.01, end: 1.01, top: 1.01, bottom: 1.01).toString(), 'EdgeInsetsDirectional(1.0, 1.0, 1.0, 1.0)'); - expect((new EdgeInsetsDirectional.only(start: 4.0).add(new EdgeInsets.only(top: 3.0))).toString(), 'EdgeInsetsDirectional(4.0, 3.0, 0.0, 0.0)'); - expect((new EdgeInsetsDirectional.only(top: 4.0).add(new EdgeInsets.only(right: 3.0))).toString(), 'EdgeInsets(0.0, 4.0, 3.0, 0.0)'); - expect((new EdgeInsetsDirectional.only(start: 4.0).add(new EdgeInsets.only(left: 3.0))).toString(), 'EdgeInsets(3.0, 0.0, 0.0, 0.0) + EdgeInsetsDirectional(4.0, 0.0, 0.0, 0.0)'); + expect(const EdgeInsets.only().toString(), 'EdgeInsets.zero'); + expect(const EdgeInsets.only(top: 1.01, left: 1.01, right: 1.01, bottom: 1.01).toString(), 'EdgeInsets.all(1.0)'); + expect(const EdgeInsetsDirectional.only().toString(), 'EdgeInsets.zero'); + expect(const EdgeInsetsDirectional.only(start: 1.01, end: 1.01, top: 1.01, bottom: 1.01).toString(), 'EdgeInsetsDirectional(1.0, 1.0, 1.0, 1.0)'); + expect((const EdgeInsetsDirectional.only(start: 4.0).add(const EdgeInsets.only(top: 3.0))).toString(), 'EdgeInsetsDirectional(4.0, 3.0, 0.0, 0.0)'); + expect((const EdgeInsetsDirectional.only(top: 4.0).add(const EdgeInsets.only(right: 3.0))).toString(), 'EdgeInsets(0.0, 4.0, 3.0, 0.0)'); + expect((const EdgeInsetsDirectional.only(start: 4.0).add(const EdgeInsets.only(left: 3.0))).toString(), 'EdgeInsets(3.0, 0.0, 0.0, 0.0) + EdgeInsetsDirectional(4.0, 0.0, 0.0, 0.0)'); }); } diff --git a/packages/flutter/test/painting/fractional_offset_test.dart b/packages/flutter/test/painting/fractional_offset_test.dart index bfb8e81543..15ce3a6d54 100644 --- a/packages/flutter/test/painting/fractional_offset_test.dart +++ b/packages/flutter/test/painting/fractional_offset_test.dart @@ -25,8 +25,8 @@ void main() { expect(FractionalOffset.lerp(a, b, 0.25), equals(const FractionalOffset(0.125, 0.0))); expect(FractionalOffset.lerp(null, null, 0.25), isNull); - expect(FractionalOffset.lerp(null, b, 0.25), equals(new FractionalOffset(0.5, 0.5 - 0.125))); - expect(FractionalOffset.lerp(a, null, 0.25), equals(new FractionalOffset(0.125, 0.125))); + expect(FractionalOffset.lerp(null, b, 0.25), equals(const FractionalOffset(0.5, 0.5 - 0.125))); + expect(FractionalOffset.lerp(a, null, 0.25), equals(const FractionalOffset(0.125, 0.125))); }); test('FractionalOffset.fromOffsetAndSize()', () { @@ -40,26 +40,27 @@ void main() { }); test('FractionalOffsetGeometry.resolve()', () { - expect(new FractionalOffsetDirectional(0.25, 0.3).resolve(TextDirection.ltr), const FractionalOffset(0.25, 0.3)); - expect(new FractionalOffsetDirectional(0.25, 0.3).resolve(TextDirection.rtl), const FractionalOffset(0.75, 0.3)); - expect(new FractionalOffsetDirectional(-0.25, 0.3).resolve(TextDirection.ltr), const FractionalOffset(-0.25, 0.3)); - expect(new FractionalOffsetDirectional(-0.25, 0.3).resolve(TextDirection.rtl), const FractionalOffset(1.25, 0.3)); - expect(new FractionalOffsetDirectional(1.25, 0.3).resolve(TextDirection.ltr), const FractionalOffset(1.25, 0.3)); - expect(new FractionalOffsetDirectional(1.25, 0.3).resolve(TextDirection.rtl), const FractionalOffset(-0.25, 0.3)); - expect(new FractionalOffsetDirectional(0.5, -0.3).resolve(TextDirection.ltr), const FractionalOffset(0.5, -0.3)); - expect(new FractionalOffsetDirectional(0.5, -0.3).resolve(TextDirection.rtl), const FractionalOffset(0.5, -0.3)); - expect(new FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.ltr), const FractionalOffset(0.0, 0.0)); - expect(new FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.rtl), const FractionalOffset(1.0, 0.0)); - expect(new FractionalOffsetDirectional(1.0, 1.0).resolve(TextDirection.ltr), const FractionalOffset(1.0, 1.0)); - expect(new FractionalOffsetDirectional(1.0, 1.0).resolve(TextDirection.rtl), const FractionalOffset(0.0, 1.0)); - expect(new FractionalOffsetDirectional(1.0, 2.0), new FractionalOffsetDirectional(1.0, 2.0)); - expect(new FractionalOffsetDirectional(1.0, 2.0).hashCode, isNot(new FractionalOffsetDirectional(2.0, 1.0))); - expect(new FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.ltr), - new FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.rtl)); - expect(new FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.ltr), - isNot(new FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.ltr))); - expect(new FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.ltr), - isNot(new FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.rtl))); + expect(const FractionalOffsetDirectional(0.25, 0.3).resolve(TextDirection.ltr), const FractionalOffset(0.25, 0.3)); + expect(const FractionalOffsetDirectional(0.25, 0.3).resolve(TextDirection.rtl), const FractionalOffset(0.75, 0.3)); + expect(const FractionalOffsetDirectional(-0.25, 0.3).resolve(TextDirection.ltr), const FractionalOffset(-0.25, 0.3)); + expect(const FractionalOffsetDirectional(-0.25, 0.3).resolve(TextDirection.rtl), const FractionalOffset(1.25, 0.3)); + expect(const FractionalOffsetDirectional(1.25, 0.3).resolve(TextDirection.ltr), const FractionalOffset(1.25, 0.3)); + expect(const FractionalOffsetDirectional(1.25, 0.3).resolve(TextDirection.rtl), const FractionalOffset(-0.25, 0.3)); + expect(const FractionalOffsetDirectional(0.5, -0.3).resolve(TextDirection.ltr), const FractionalOffset(0.5, -0.3)); + expect(const FractionalOffsetDirectional(0.5, -0.3).resolve(TextDirection.rtl), const FractionalOffset(0.5, -0.3)); + expect(const FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.ltr), const FractionalOffset(0.0, 0.0)); + expect(const FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.rtl), const FractionalOffset(1.0, 0.0)); + expect(const FractionalOffsetDirectional(1.0, 1.0).resolve(TextDirection.ltr), const FractionalOffset(1.0, 1.0)); + expect(const FractionalOffsetDirectional(1.0, 1.0).resolve(TextDirection.rtl), const FractionalOffset(0.0, 1.0)); + final double $1 = 1.0; // we want these instances to be separate instances so that we're not just checking with a single object + expect(new FractionalOffsetDirectional($1, 2.0), new FractionalOffsetDirectional($1, 2.0)); + expect(const FractionalOffsetDirectional(1.0, 2.0), isNot(const FractionalOffsetDirectional(2.0, 1.0))); + expect(const FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.ltr), + const FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.rtl)); + expect(const FractionalOffsetDirectional(0.0, 0.0).resolve(TextDirection.ltr), + isNot(const FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.ltr))); + expect(const FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.ltr), + isNot(const FractionalOffsetDirectional(1.0, 0.0).resolve(TextDirection.rtl))); }); test('FractionalOffsetGeometry.lerp', () { @@ -111,34 +112,34 @@ void main() { }); test('FractionalOffsetGeometry operators', () { - expect(new FractionalOffsetDirectional(1.0, 2.0) * 2.0, new FractionalOffsetDirectional(2.0, 4.0)); - expect(new FractionalOffsetDirectional(1.0, 2.0) / 2.0, new FractionalOffsetDirectional(0.5, 1.0)); - expect(new FractionalOffsetDirectional(1.0, 2.0) % 2.0, new FractionalOffsetDirectional(1.0, 0.0)); - expect(new FractionalOffsetDirectional(1.0, 2.0) ~/ 2.0, new FractionalOffsetDirectional(0.0, 1.0)); - expect(FractionalOffset.topLeft.add(new FractionalOffsetDirectional(1.0, 2.0) * 2.0), new FractionalOffsetDirectional(2.0, 4.0)); - expect(FractionalOffset.topLeft.add(new FractionalOffsetDirectional(1.0, 2.0) / 2.0), new FractionalOffsetDirectional(0.5, 1.0)); - expect(FractionalOffset.topLeft.add(new FractionalOffsetDirectional(1.0, 2.0) % 2.0), new FractionalOffsetDirectional(1.0, 0.0)); - expect(FractionalOffset.topLeft.add(new FractionalOffsetDirectional(1.0, 2.0) ~/ 2.0), new FractionalOffsetDirectional(0.0, 1.0)); - expect(new FractionalOffset(1.0, 2.0) * 2.0, new FractionalOffset(2.0, 4.0)); - expect(new FractionalOffset(1.0, 2.0) / 2.0, new FractionalOffset(0.5, 1.0)); - expect(new FractionalOffset(1.0, 2.0) % 2.0, new FractionalOffset(1.0, 0.0)); - expect(new FractionalOffset(1.0, 2.0) ~/ 2.0, new FractionalOffset(0.0, 1.0)); + expect(const FractionalOffsetDirectional(1.0, 2.0) * 2.0, const FractionalOffsetDirectional(2.0, 4.0)); + expect(const FractionalOffsetDirectional(1.0, 2.0) / 2.0, const FractionalOffsetDirectional(0.5, 1.0)); + expect(const FractionalOffsetDirectional(1.0, 2.0) % 2.0, const FractionalOffsetDirectional(1.0, 0.0)); + expect(const FractionalOffsetDirectional(1.0, 2.0) ~/ 2.0, const FractionalOffsetDirectional(0.0, 1.0)); + expect(FractionalOffset.topLeft.add(const FractionalOffsetDirectional(1.0, 2.0) * 2.0), const FractionalOffsetDirectional(2.0, 4.0)); + expect(FractionalOffset.topLeft.add(const FractionalOffsetDirectional(1.0, 2.0) / 2.0), const FractionalOffsetDirectional(0.5, 1.0)); + expect(FractionalOffset.topLeft.add(const FractionalOffsetDirectional(1.0, 2.0) % 2.0), const FractionalOffsetDirectional(1.0, 0.0)); + expect(FractionalOffset.topLeft.add(const FractionalOffsetDirectional(1.0, 2.0) ~/ 2.0), const FractionalOffsetDirectional(0.0, 1.0)); + expect(const FractionalOffset(1.0, 2.0) * 2.0, const FractionalOffset(2.0, 4.0)); + expect(const FractionalOffset(1.0, 2.0) / 2.0, const FractionalOffset(0.5, 1.0)); + expect(const FractionalOffset(1.0, 2.0) % 2.0, const FractionalOffset(1.0, 0.0)); + expect(const FractionalOffset(1.0, 2.0) ~/ 2.0, const FractionalOffset(0.0, 1.0)); }); test('FractionalOffsetGeometry operators', () { - expect(new FractionalOffset(1.0, 2.0) + new FractionalOffset(3.0, 5.0), new FractionalOffset(4.0, 7.0)); - expect(new FractionalOffset(1.0, 2.0) - new FractionalOffset(3.0, 5.0), new FractionalOffset(-2.0, -3.0)); - expect(new FractionalOffsetDirectional(1.0, 2.0) + new FractionalOffsetDirectional(3.0, 5.0), new FractionalOffsetDirectional(4.0, 7.0)); - expect(new FractionalOffsetDirectional(1.0, 2.0) - new FractionalOffsetDirectional(3.0, 5.0), new FractionalOffsetDirectional(-2.0, -3.0)); + expect(const FractionalOffset(1.0, 2.0) + const FractionalOffset(3.0, 5.0), const FractionalOffset(4.0, 7.0)); + expect(const FractionalOffset(1.0, 2.0) - const FractionalOffset(3.0, 5.0), const FractionalOffset(-2.0, -3.0)); + expect(const FractionalOffsetDirectional(1.0, 2.0) + const FractionalOffsetDirectional(3.0, 5.0), const FractionalOffsetDirectional(4.0, 7.0)); + expect(const FractionalOffsetDirectional(1.0, 2.0) - const FractionalOffsetDirectional(3.0, 5.0), const FractionalOffsetDirectional(-2.0, -3.0)); }); test('FractionalOffsetGeometry toString', () { - expect(new FractionalOffset(1.0001, 2.0001).toString(), 'FractionalOffset(1.0, 2.0)'); - expect(new FractionalOffset(0.0, 0.0).toString(), 'FractionalOffset.topLeft'); - expect(new FractionalOffset(0.0, 1.0).add(new FractionalOffsetDirectional(1.0, 0.0)).toString(), 'FractionalOffsetDirectional.bottomEnd'); - expect(new FractionalOffset(0.0001, 0.0001).toString(), 'FractionalOffset(0.0, 0.0)'); - expect(new FractionalOffset(0.0, 0.0).toString(), 'FractionalOffset.topLeft'); - expect(new FractionalOffsetDirectional(0.0, 0.0).toString(), 'FractionalOffsetDirectional.topStart'); - expect(new FractionalOffset(1.0, 1.0).add(new FractionalOffsetDirectional(1.0, 1.0)).toString(), 'FractionalOffset(1.0, 2.0) + FractionalOffsetDirectional(1.0, 0.0)'); + expect(const FractionalOffset(1.0001, 2.0001).toString(), 'FractionalOffset(1.0, 2.0)'); + expect(const FractionalOffset(0.0, 0.0).toString(), 'FractionalOffset.topLeft'); + expect(const FractionalOffset(0.0, 1.0).add(const FractionalOffsetDirectional(1.0, 0.0)).toString(), 'FractionalOffsetDirectional.bottomEnd'); + expect(const FractionalOffset(0.0001, 0.0001).toString(), 'FractionalOffset(0.0, 0.0)'); + expect(const FractionalOffset(0.0, 0.0).toString(), 'FractionalOffset.topLeft'); + expect(const FractionalOffsetDirectional(0.0, 0.0).toString(), 'FractionalOffsetDirectional.topStart'); + expect(const FractionalOffset(1.0, 1.0).add(const FractionalOffsetDirectional(1.0, 1.0)).toString(), 'FractionalOffset(1.0, 2.0) + FractionalOffsetDirectional(1.0, 0.0)'); }); } diff --git a/packages/flutter/test/rendering/flex_test.dart b/packages/flutter/test/rendering/flex_test.dart index 87ab3ff766..c4423234f4 100644 --- a/packages/flutter/test/rendering/flex_test.dart +++ b/packages/flutter/test/rendering/flex_test.dart @@ -358,7 +358,7 @@ void main() { expect(exceptions, isEmpty); layout(parent); expect(exceptions, isNotEmpty); - expect(exceptions.first, new isInstanceOf()); + expect(exceptions.first, const isInstanceOf()); }); test('MainAxisSize.min inside unconstrained', () { @@ -388,7 +388,7 @@ void main() { expect(exceptions, isEmpty); layout(parent); expect(exceptions, isNotEmpty); - expect(exceptions.first, new isInstanceOf()); + expect(exceptions.first, const isInstanceOf()); }); test('Flex RTL', () { diff --git a/packages/flutter/test/services/image_provider_test.dart b/packages/flutter/test/services/image_provider_test.dart index 4517c266a5..08512356a4 100644 --- a/packages/flutter/test/services/image_provider_test.dart +++ b/packages/flutter/test/services/image_provider_test.dart @@ -8,7 +8,8 @@ import 'package:flutter_test/flutter_test.dart'; void main() { test('NetworkImage non-null url test', () { expect(() { - new NetworkImage(null); // ignore: prefer_const_constructors + final String url = null; // we don't want this instance to be const because otherwise it would throw at compile time. + new NetworkImage(url); }, throwsAssertionError); }); } diff --git a/packages/flutter/test/widgets/directionality_test.dart b/packages/flutter/test/widgets/directionality_test.dart index b326de0c26..cde6811b7c 100644 --- a/packages/flutter/test/widgets/directionality_test.dart +++ b/packages/flutter/test/widgets/directionality_test.dart @@ -11,7 +11,7 @@ void main() { final Widget inner = new Builder( builder: (BuildContext context) { log.add(Directionality.of(context)); - return new Placeholder(); + return const Placeholder(); } ); await tester.pumpWidget( @@ -57,13 +57,16 @@ void main() { builder: (BuildContext context) { expect(Directionality.of(context), isNull); good = true; - return new Placeholder(); + return const Placeholder(); }, )); expect(good, isTrue); }); testWidgets('Directionality can\'t be null', (WidgetTester tester) async { - expect(() { new Directionality(textDirection: null, child: new Placeholder()); }, throwsAssertionError); + expect(() { + final TextDirection textDirection = null; // we don't want this instance to be const because otherwise it would throw at compile time. + new Directionality(textDirection: textDirection, child: const Placeholder()); + }, throwsAssertionError); }); } diff --git a/packages/flutter/test/widgets/localizations_test.dart b/packages/flutter/test/widgets/localizations_test.dart index b67f1fd827..c08b6eea6c 100644 --- a/packages/flutter/test/widgets/localizations_test.dart +++ b/packages/flutter/test/widgets/localizations_test.dart @@ -130,7 +130,7 @@ void main() { buildFrame( buildContent: (BuildContext context) { pageContext = context; - return new Text('Hello World'); + return const Text('Hello World'); } ) ); @@ -153,7 +153,7 @@ void main() { locale: locale, buildContent: (BuildContext context) { pageContext = context; - return new Text('Hello World'); + return const Text('Hello World'); }, ) ); @@ -295,7 +295,7 @@ void main() { locale: const Locale('en', 'GB'), delegates: >[ new SyncTestLocalizationsDelegate(), - new DefaultWidgetsLocalizationsDelegate(), + const DefaultWidgetsLocalizationsDelegate(), ], // Create a new context within the en_GB Localization child: new Builder( diff --git a/packages/flutter/test/widgets/rtl_test.dart b/packages/flutter/test/widgets/rtl_test.dart index 2ab136d64e..5bb9579dd7 100644 --- a/packages/flutter/test/widgets/rtl_test.dart +++ b/packages/flutter/test/widgets/rtl_test.dart @@ -7,9 +7,9 @@ import 'package:flutter/widgets.dart'; void main() { testWidgets('Padding RTL', (WidgetTester tester) async { - final Widget child = new Padding( - padding: new EdgeInsetsDirectional.only(start: 10.0), - child: new Placeholder(), + final Widget child = const Padding( + padding: const EdgeInsetsDirectional.only(start: 10.0), + child: const Placeholder(), ); await tester.pumpWidget(new Directionality( textDirection: TextDirection.ltr, @@ -25,9 +25,9 @@ void main() { testWidgets('Container padding/margin RTL', (WidgetTester tester) async { final Widget child = new Container( - padding: new EdgeInsetsDirectional.only(start: 6.0), - margin: new EdgeInsetsDirectional.only(end: 20.0, start: 4.0), - child: new Placeholder(), + padding: const EdgeInsetsDirectional.only(start: 6.0), + margin: const EdgeInsetsDirectional.only(end: 20.0, start: 4.0), + child: const Placeholder(), ); await tester.pumpWidget(new Directionality( textDirection: TextDirection.ltr, @@ -45,9 +45,9 @@ void main() { testWidgets('Container padding/margin mixed RTL/absolute', (WidgetTester tester) async { final Widget child = new Container( - padding: new EdgeInsets.only(left: 6.0), - margin: new EdgeInsetsDirectional.only(end: 20.0, start: 4.0), - child: new Placeholder(), + padding: const EdgeInsets.only(left: 6.0), + margin: const EdgeInsetsDirectional.only(end: 20.0, start: 4.0), + child: const Placeholder(), ); await tester.pumpWidget(new Directionality( textDirection: TextDirection.ltr, @@ -64,7 +64,7 @@ void main() { }); testWidgets('EdgeInsetsDirectional without Directionality', (WidgetTester tester) async { - await tester.pumpWidget(new Padding(padding: new EdgeInsetsDirectional.only())); + await tester.pumpWidget(const Padding(padding: const EdgeInsetsDirectional.only())); expect(tester.takeException(), isAssertionError); }); } diff --git a/packages/flutter/test/widgets/semantics_10_test.dart b/packages/flutter/test/widgets/semantics_10_test.dart index 956fe72a86..7650ef2bdd 100644 --- a/packages/flutter/test/widgets/semantics_10_test.dart +++ b/packages/flutter/test/widgets/semantics_10_test.dart @@ -51,10 +51,10 @@ Widget buildTestWidgets({bool excludeSemantics, String label, bool isSemanticsBo isSemanticBoundary: isSemanticsBoundary, child: new Column( children: [ - new Semantics( + const Semantics( label: 'child1', ), - new Semantics( + const Semantics( label: 'child2', ), ], diff --git a/packages/flutter/test/widgets/semantics_11_test.dart b/packages/flutter/test/widgets/semantics_11_test.dart index f8d7f5d21f..bd41d685fa 100644 --- a/packages/flutter/test/widgets/semantics_11_test.dart +++ b/packages/flutter/test/widgets/semantics_11_test.dart @@ -13,7 +13,7 @@ void main() { testWidgets('markNeedsSemanticsUpdate allways resets node', (WidgetTester tester) async { final SemanticsTester semantics = new SemanticsTester(tester); - await tester.pumpWidget(new TestWidget()); + await tester.pumpWidget(const TestWidget()); final RenderTest renderObj = tester.renderObject(find.byType(TestWidget)); expect(renderObj.labelWasReset, hasLength(1)); expect(renderObj.labelWasReset.last, true); diff --git a/packages/flutter/test/widgets/sliver_semantics_test.dart b/packages/flutter/test/widgets/sliver_semantics_test.dart index b1949394fb..e9f28dab8f 100644 --- a/packages/flutter/test/widgets/sliver_semantics_test.dart +++ b/packages/flutter/test/widgets/sliver_semantics_test.dart @@ -29,7 +29,7 @@ void main() { child: new CustomScrollView( controller: scrollController, slivers: [ - new SliverAppBar( + const SliverAppBar( pinned: true, expandedHeight: appBarExpandedHeight, title: const Text('Semantics Test with Slivers'), @@ -239,7 +239,7 @@ void main() { slivers: slivers, ), ); - + expect(semantics, hasSemantics( new TestSemantics.root( children: [ @@ -295,10 +295,10 @@ void main() { final ScrollController controller = new ScrollController(initialScrollOffset: 280.0); await tester.pumpWidget( new MediaQuery( - data: new MediaQueryData(), + data: const MediaQueryData(), child: new CustomScrollView( slivers: [ - new SliverAppBar( + const SliverAppBar( pinned: true, expandedHeight: 100.0, ), @@ -377,11 +377,11 @@ void main() { }); await tester.pumpWidget( new MediaQuery( - data: new MediaQueryData(), + data: const MediaQueryData(), child: new CustomScrollView( controller: controller, slivers: [ - new SliverAppBar( + const SliverAppBar( pinned: true, expandedHeight: 100.0, ), @@ -454,11 +454,11 @@ void main() { final ScrollController controller = new ScrollController(initialScrollOffset: 280.0); await tester.pumpWidget( new MediaQuery( - data: new MediaQueryData(), + data: const MediaQueryData(), child: new CustomScrollView( reverse: true, // This is the important setting for this test. slivers: [ - new SliverAppBar( + const SliverAppBar( pinned: true, expandedHeight: 100.0, ), @@ -538,12 +538,12 @@ void main() { }); await tester.pumpWidget( new MediaQuery( - data: new MediaQueryData(), + data: const MediaQueryData(), child: new CustomScrollView( reverse: true, // This is the important setting for this test. controller: controller, slivers: [ - new SliverAppBar( + const SliverAppBar( pinned: true, expandedHeight: 100.0, ), @@ -624,7 +624,7 @@ void main() { }); await tester.pumpWidget( new MediaQuery( - data: new MediaQueryData(), + data: const MediaQueryData(), child: new Scrollable( controller: controller, viewportBuilder: (BuildContext context, ViewportOffset offset) { @@ -635,7 +635,7 @@ void main() { new SliverList( delegate: new SliverChildListDelegate(backwardChildren), ), - new SliverAppBar( + const SliverAppBar( pinned: true, expandedHeight: 100.0, flexibleSpace: const FlexibleSpaceBar( diff --git a/packages/flutter_tools/test/ios/devices_test.dart b/packages/flutter_tools/test/ios/devices_test.dart index cfd582af76..13a085f624 100644 --- a/packages/flutter_tools/test/ios/devices_test.dart +++ b/packages/flutter_tools/test/ios/devices_test.dart @@ -90,7 +90,7 @@ iPhone SE (11.0) [667E8DCD-5DCD-4C80-93A9-60D1D995206F] (Simulator) Runner(libsystem_asl.dylib)[297] : libMobileGestalt MobileGestalt.c:550: no access to InverseDeviceID (see ) Runner(libsystem_asl.dylib)[297] : I is for ichigo '''.codeUnits])); - when(mockProcess.stderr).thenReturn(new Stream>.empty()); + when(mockProcess.stderr).thenReturn(const Stream>.empty()); // Delay return of exitCode until after stdout stream data, since it terminates the logger. when(mockProcess.exitCode).thenReturn(new Future.delayed(Duration.ZERO, () => 0)); return new Future.value(mockProcess);