diff --git a/examples/flutter_gallery/lib/demo/calculator/logic.dart b/examples/flutter_gallery/lib/demo/calculator/logic.dart index e73a3fca229..128d273395d 100644 --- a/examples/flutter_gallery/lib/demo/calculator/logic.dart +++ b/examples/flutter_gallery/lib/demo/calculator/logic.dart @@ -83,6 +83,8 @@ class OperationToken extends ExpressionToken { case Operation.Division: return ' \u00F7 '; } + assert(operation != null); + return null; } } @@ -257,6 +259,8 @@ class CalcExpression { case ExpressionState.NumberWithPoint: case ExpressionState.Result: return appendOperation(Operation.Subtraction); + default: + return null; } } diff --git a/examples/flutter_gallery/lib/demo/grid_list_demo.dart b/examples/flutter_gallery/lib/demo/grid_list_demo.dart index 18a7d77eb12..f6c434ba45c 100644 --- a/examples/flutter_gallery/lib/demo/grid_list_demo.dart +++ b/examples/flutter_gallery/lib/demo/grid_list_demo.dart @@ -130,6 +130,8 @@ class GridDemoPhotoItem extends StatelessWidget { child: image ); } + assert(tileStyle != null); + return null; } } diff --git a/examples/stocks/lib/main.dart b/examples/stocks/lib/main.dart index 2c542d374b5..5e7b238ae50 100644 --- a/examples/stocks/lib/main.dart +++ b/examples/stocks/lib/main.dart @@ -75,6 +75,8 @@ class StocksAppState extends State { accentColor: Colors.redAccent[200] ); } + assert(_configuration.stockMode != null); + return null; } Route _getRoute(RouteSettings settings) { diff --git a/packages/flutter/lib/src/animation/animations.dart b/packages/flutter/lib/src/animation/animations.dart index 45442315e29..62490a662c4 100644 --- a/packages/flutter/lib/src/animation/animations.dart +++ b/packages/flutter/lib/src/animation/animations.dart @@ -287,6 +287,8 @@ class ReverseAnimation extends Animation case AnimationStatus.completed: return AnimationStatus.dismissed; case AnimationStatus.dismissed: return AnimationStatus.completed; } + assert(status != null); + return null; } @override diff --git a/packages/flutter/lib/src/cassowary/expression.dart b/packages/flutter/lib/src/cassowary/expression.dart index 55742aa6e3a..4b36ee1a27d 100644 --- a/packages/flutter/lib/src/cassowary/expression.dart +++ b/packages/flutter/lib/src/cassowary/expression.dart @@ -157,7 +157,6 @@ class Expression extends EquationMember { if (!m.isConstant) { throw new ParserException( 'The divisor was not a constant expression', [this, m]); - return null; } return this._applyMultiplicand(1.0 / m.value); diff --git a/packages/flutter/lib/src/material/button.dart b/packages/flutter/lib/src/material/button.dart index c9687432749..17575228fcf 100644 --- a/packages/flutter/lib/src/material/button.dart +++ b/packages/flutter/lib/src/material/button.dart @@ -227,6 +227,8 @@ class _MaterialButtonState extends State { return Colors.white30; } } + assert(_colorBrightness != null); + return null; } void _handleHighlightChanged(bool value) { diff --git a/packages/flutter/lib/src/material/dialog.dart b/packages/flutter/lib/src/material/dialog.dart index 2a5e10c85e7..61f1d0eff0c 100644 --- a/packages/flutter/lib/src/material/dialog.dart +++ b/packages/flutter/lib/src/material/dialog.dart @@ -57,12 +57,15 @@ class Dialog extends StatelessWidget { final List actions; Color _getColor(BuildContext context) { - switch (Theme.of(context).brightness) { + Brightness brightness = Theme.of(context).brightness; + switch (brightness) { case Brightness.light: return Colors.white; case Brightness.dark: return Colors.grey[800]; } + assert(brightness != null); + return null; } @override diff --git a/packages/flutter/lib/src/material/drawer_item.dart b/packages/flutter/lib/src/material/drawer_item.dart index 89631494866..40f32f5ccdd 100644 --- a/packages/flutter/lib/src/material/drawer_item.dart +++ b/packages/flutter/lib/src/material/drawer_item.dart @@ -67,6 +67,8 @@ class DrawerItem extends StatelessWidget { return Colors.white30; return null; // use default icon theme colour unmodified } + assert(themeData.brightness != null); + return null; } TextStyle _getTextStyle(ThemeData themeData) { diff --git a/packages/flutter/lib/src/material/icon.dart b/packages/flutter/lib/src/material/icon.dart index a16e4963388..bb63b26499a 100644 --- a/packages/flutter/lib/src/material/icon.dart +++ b/packages/flutter/lib/src/material/icon.dart @@ -65,6 +65,8 @@ class Icon extends StatelessWidget { case Brightness.light: return Colors.black; } + assert(brightness != null); + return null; } Color _getDefaultColor(BuildContext context) { diff --git a/packages/flutter/lib/src/material/raised_button.dart b/packages/flutter/lib/src/material/raised_button.dart index df7e24e8a09..4a0a36877bc 100644 --- a/packages/flutter/lib/src/material/raised_button.dart +++ b/packages/flutter/lib/src/material/raised_button.dart @@ -98,12 +98,15 @@ class RaisedButton extends StatelessWidget { } else { if (disabledColor != null) return disabledColor; - switch (Theme.of(context).brightness) { + Brightness brightness = Theme.of(context).brightness; + switch (brightness) { case Brightness.light: return Colors.black12; case Brightness.dark: return Colors.white12; } + assert(brightness != null); + return null; } } diff --git a/packages/flutter/lib/src/material/text_selection.dart b/packages/flutter/lib/src/material/text_selection.dart index 26e80543b5c..fdeae03dbd4 100644 --- a/packages/flutter/lib/src/material/text_selection.dart +++ b/packages/flutter/lib/src/material/text_selection.dart @@ -186,4 +186,6 @@ Widget buildTextSelectionHandle( child: handle ); } + assert(type != null); + return null; } diff --git a/packages/flutter/lib/src/painting/box_painter.dart b/packages/flutter/lib/src/painting/box_painter.dart index 6954c113efb..88dacc9f618 100644 --- a/packages/flutter/lib/src/painting/box_painter.dart +++ b/packages/flutter/lib/src/painting/box_painter.dart @@ -1353,6 +1353,8 @@ class BoxDecoration extends Decoration { double distance = (position - center).distance; return distance <= math.min(size.width, size.height) / 2.0; } + assert(shape != null); + return null; } @override diff --git a/packages/flutter/lib/src/painting/text_painter.dart b/packages/flutter/lib/src/painting/text_painter.dart index face24932be..cdcaf82fbf0 100644 --- a/packages/flutter/lib/src/painting/text_painter.dart +++ b/packages/flutter/lib/src/painting/text_painter.dart @@ -125,6 +125,8 @@ class TextPainter { case TextBaseline.ideographic: return _paragraph.ideographicBaseline; } + assert(baseline != null); + return null; } double _lastMinWidth; @@ -211,6 +213,8 @@ class TextPainter { ?? _getOffsetFromUpstream(offset, caretPrototype) ?? emptyOffset; } + assert(position.affinity != null); + return null; } /// Returns a list of rects that bound the given selection. diff --git a/packages/flutter/lib/src/rendering/box.dart b/packages/flutter/lib/src/rendering/box.dart index 980f19bd802..c1ebd9398da 100644 --- a/packages/flutter/lib/src/rendering/box.dart +++ b/packages/flutter/lib/src/rendering/box.dart @@ -1125,7 +1125,6 @@ abstract class RenderBox extends RenderObject { 'set a size and lay out any children, or, set sizedByParent to true ' 'so that performResize() sizes the render object.' ); - return true; } return true; }); diff --git a/packages/flutter/lib/src/rendering/list.dart b/packages/flutter/lib/src/rendering/list.dart index 25f51fd04e6..6cba7fd158e 100644 --- a/packages/flutter/lib/src/rendering/list.dart +++ b/packages/flutter/lib/src/rendering/list.dart @@ -82,6 +82,8 @@ class RenderList extends RenderVirtualViewport { case Axis.horizontal: return padding.horizontal; } + assert(mainAxis != null); + return null; } double get _preferredExtent { @@ -108,6 +110,8 @@ class RenderList extends RenderVirtualViewport { assert(debugThrowIfNotCheckingIntrinsics()); return 0.0; } + assert(mainAxis != null); + return null; } @override diff --git a/packages/flutter/lib/src/rendering/viewport.dart b/packages/flutter/lib/src/rendering/viewport.dart index b3a7a473ed4..b6a70d01fa7 100644 --- a/packages/flutter/lib/src/rendering/viewport.dart +++ b/packages/flutter/lib/src/rendering/viewport.dart @@ -57,6 +57,8 @@ class ViewportDimensions { case ViewportAnchor.end: return paintOffset + (containerSize - contentSize); } + assert(anchor != null); + return null; } @override @@ -108,6 +110,8 @@ class RenderViewportBase extends RenderBox { case Axis.vertical: return offset.dx == 0.0; } + assert(direction != null); + return null; } /// The offset at which to paint the child. diff --git a/packages/flutter/lib/src/widgets/banner.dart b/packages/flutter/lib/src/widgets/banner.dart index 55d06fc24ca..5f2dd73f14a 100644 --- a/packages/flutter/lib/src/widgets/banner.dart +++ b/packages/flutter/lib/src/widgets/banner.dart @@ -90,6 +90,8 @@ class BannerPainter extends CustomPainter { case BannerLocation.topLeft: return 0.0; } + assert(location != null); + return null; } double _translationY(double height) { @@ -101,6 +103,8 @@ class BannerPainter extends CustomPainter { case BannerLocation.topLeft: return 0.0; } + assert(location != null); + return null; } double get _rotation { @@ -112,6 +116,8 @@ class BannerPainter extends CustomPainter { case BannerLocation.topLeft: return -math.PI / 4.0; } + assert(location != null); + return null; } } diff --git a/packages/flutter/lib/src/widgets/dismissable.dart b/packages/flutter/lib/src/widgets/dismissable.dart index fad32790849..8133646dd8d 100644 --- a/packages/flutter/lib/src/widgets/dismissable.dart +++ b/packages/flutter/lib/src/widgets/dismissable.dart @@ -245,7 +245,6 @@ class _DismissableState extends State { return vy > _kMinFlingVelocity; } } - return false; } void _handleDragEnd(DragEndDetails details) { diff --git a/packages/flutter/lib/src/widgets/lazy_block.dart b/packages/flutter/lib/src/widgets/lazy_block.dart index 8b927cc440d..b7acaca8494 100644 --- a/packages/flutter/lib/src/widgets/lazy_block.dart +++ b/packages/flutter/lib/src/widgets/lazy_block.dart @@ -731,6 +731,8 @@ class _LazyBlockElement extends RenderObjectElement { case Axis.vertical: return size.height; } + assert(widget.mainAxis != null); + return null; } Offset _getMainAxisOffsetForSize(Size size) { @@ -740,6 +742,8 @@ class _LazyBlockElement extends RenderObjectElement { case Axis.vertical: return new Offset(0.0, size.height); } + assert(widget.mainAxis != null); + return null; } static RenderBox _getNextWithin(_RenderLazyBlock block, RenderBox child) { diff --git a/packages/flutter/lib/src/widgets/pageable_list.dart b/packages/flutter/lib/src/widgets/pageable_list.dart index b572554addd..611f60ff746 100644 --- a/packages/flutter/lib/src/widgets/pageable_list.dart +++ b/packages/flutter/lib/src/widgets/pageable_list.dart @@ -224,6 +224,8 @@ abstract class PageableState extends ScrollableState { case Axis.vertical: return box.size.height; } + assert(config.scrollDirection != null); + return null; } @override @@ -248,6 +250,8 @@ abstract class PageableState extends ScrollableState { case ViewportAnchor.end: return (_itemCount - scrollIndex - 1) % itemCount; } + assert(config.scrollAnchor != null); + return null; } @override @@ -324,6 +328,8 @@ abstract class PageableState extends ScrollableState { case PageableListFlingBehavior.stopAtNextPage: return _flingToAdjacentItem(scrollVelocity); } + assert(config.itemsSnapAlignment != null); + return null; } @override diff --git a/packages/flutter/lib/src/widgets/scrollable.dart b/packages/flutter/lib/src/widgets/scrollable.dart index e2f386f8fd5..889a93dd85e 100644 --- a/packages/flutter/lib/src/widgets/scrollable.dart +++ b/packages/flutter/lib/src/widgets/scrollable.dart @@ -285,6 +285,8 @@ class ScrollableState extends State { case ViewportAnchor.end: return pixelOffset; } + assert(config.scrollAnchor != null); + return null; } /// Convert a scrollOffset value to the number of pixels to which it corresponds. diff --git a/packages/flutter/lib/src/widgets/scrollable_list.dart b/packages/flutter/lib/src/widgets/scrollable_list.dart index 28dca198b70..88497d0ef1c 100644 --- a/packages/flutter/lib/src/widgets/scrollable_list.dart +++ b/packages/flutter/lib/src/widgets/scrollable_list.dart @@ -239,6 +239,8 @@ class _VirtualListViewport extends VirtualViewport { } break; } + assert(mainAxis != null); + return null; } @override diff --git a/packages/flutter/lib/src/widgets/text_selection.dart b/packages/flutter/lib/src/widgets/text_selection.dart index c08ea39952b..37feefcd8ca 100644 --- a/packages/flutter/lib/src/widgets/text_selection.dart +++ b/packages/flutter/lib/src/widgets/text_selection.dart @@ -294,5 +294,7 @@ class _TextSelectionHandleOverlayState extends State<_TextSelectionHandleOverlay case TextDirection.rtl: return rtlType; } + assert(endpoint.direction != null); + return null; } } diff --git a/packages/flutter/lib/src/widgets/virtual_viewport.dart b/packages/flutter/lib/src/widgets/virtual_viewport.dart index 2342db5aee6..67c9fc11ef4 100644 --- a/packages/flutter/lib/src/widgets/virtual_viewport.dart +++ b/packages/flutter/lib/src/widgets/virtual_viewport.dart @@ -70,6 +70,8 @@ abstract class VirtualViewportElement extends RenderObjectElement { case ViewportAnchor.end: return scrollOffset; } + assert(renderObject.anchor != null); + return null; } /// Returns a two-dimensional representation of the scroll offset, accounting diff --git a/packages/flutter/test/widget/render_object_widget_test.dart b/packages/flutter/test/widget/render_object_widget_test.dart index a8228af6306..0b73b995ab7 100644 --- a/packages/flutter/test/widget/render_object_widget_test.dart +++ b/packages/flutter/test/widget/render_object_widget_test.dart @@ -23,12 +23,15 @@ class TestOrientedBox extends SingleChildRenderObjectWidget { TestOrientedBox({ Key key, Widget child }) : super(key: key, child: child); Decoration _getDecoration(BuildContext context) { - switch (MediaQuery.of(context).orientation) { + Orientation orientation = MediaQuery.of(context).orientation; + switch (orientation) { case Orientation.landscape: return new BoxDecoration(backgroundColor: const Color(0xFF00FF00)); case Orientation.portrait: return new BoxDecoration(backgroundColor: const Color(0xFF0000FF)); } + assert(orientation != null); + return null; } @override diff --git a/packages/flutter_tools/lib/src/application_package.dart b/packages/flutter_tools/lib/src/application_package.dart index dcd55ebd626..ae3d5df2dff 100644 --- a/packages/flutter_tools/lib/src/application_package.dart +++ b/packages/flutter_tools/lib/src/application_package.dart @@ -134,6 +134,8 @@ ApplicationPackage getApplicationPackageForPlatform(TargetPlatform platform) { case TargetPlatform.linux_x64: return null; } + assert(platform != null); + return null; } class ApplicationPackageStore { @@ -156,5 +158,6 @@ class ApplicationPackageStore { case TargetPlatform.linux_x64: return null; } + return null; } } diff --git a/packages/flutter_tools/lib/src/build_info.dart b/packages/flutter_tools/lib/src/build_info.dart index c8d600e2fee..3664066cc37 100644 --- a/packages/flutter_tools/lib/src/build_info.dart +++ b/packages/flutter_tools/lib/src/build_info.dart @@ -53,6 +53,7 @@ String getNameForHostPlatform(HostPlatform platform) { return 'linux-x64'; } assert(false); + return null; } enum TargetPlatform { @@ -80,6 +81,7 @@ String getNameForTargetPlatform(TargetPlatform platform) { return 'linux-x64'; } assert(false); + return null; } TargetPlatform getTargetPlatformForName(String platform) { @@ -97,6 +99,7 @@ TargetPlatform getTargetPlatformForName(String platform) { case 'linux-x64': return TargetPlatform.linux_x64; } + assert(platform != null); return null; } diff --git a/packages/flutter_tools/lib/src/ios/devices.dart b/packages/flutter_tools/lib/src/ios/devices.dart index 591eb9eb946..23fd55e3c74 100644 --- a/packages/flutter_tools/lib/src/ios/devices.dart +++ b/packages/flutter_tools/lib/src/ios/devices.dart @@ -349,7 +349,6 @@ class IOSDevice extends Device { } else { return false; } - return false; } @override