Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unit tests running on Windows sometimes claim RenderPadding violates the intrinsic protocol contract #19696

Closed
Hixie opened this issue Jul 23, 2018 · 20 comments
Labels
a: tests "flutter test", flutter_test, or one of our tests c: flake Tests that sometimes, but not always, incorrectly pass customer: mulligan (g3) framework flutter/packages/flutter repository. See also f: labels. platform-windows Building on or for Windows specifically

Comments

@Hixie
Copy link
Contributor

Hixie commented Jul 23, 2018

Seen on Appveyor for a PR that had only documentation changes:

══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
The following assertion was thrown during performLayout():
The intrinsic dimension methods of the RenderPadding class returned values that violate the
intrinsic protocol contract.
The following failure was detected:
 * getMinIntrinsicWidth(Infinity) returned a larger value (116.0) than
   getMaxIntrinsicWidth(Infinity) (84.0)
If you are not writing your own RenderBox subclass, then this is not
your fault. Contact support: https://github.com/flutter/flutter/issues/new
When the exception was thrown, this was the stack:
#0      RenderBox.debugAssertDoesMeetConstraints.<anonymous closure> (package:flutter/src/rendering/box.dart:1823:11)
#1      RenderBox.debugAssertDoesMeetConstraints (package:flutter/src/rendering/box.dart:1833:6)
#2      RenderBox.size=.<anonymous closure> (package:flutter/src/rendering/box.dart:1553:17)
#3      RenderBox.size= (package:flutter/src/rendering/box.dart:1553:65)
#4      RenderPadding.performLayout (package:flutter/src/rendering/shifted_box.dart:202:5)
#5      RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#6      _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#7      RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#8      _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#9      RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#10     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#11     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#12     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#13     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#14     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#15     _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1147:11)
#16     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#17     RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:263:13)
#18     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#19     _RenderInputPadding.performLayout (package:flutter/src/material/button.dart:514:13)
#20     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#21     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#22     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#23     MultiChildLayoutDelegate.layoutChild (package:flutter/src/rendering/custom_layout.dart:141:11)
#24     _ScaffoldLayout.performLayout (package:flutter/src/material/scaffold.dart:338:7)
#25     MultiChildLayoutDelegate._callPerformLayout (package:flutter/src/rendering/custom_layout.dart:211:7)
#26     RenderCustomMultiChildLayoutBox.performLayout (package:flutter/src/rendering/custom_layout.dart:355:14)
#27     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#28     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#29     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#30     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#31     _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1147:11)
#32     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#33     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#34     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#35     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#36     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#37     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#38     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#39     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#40     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#41     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#42     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#43     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#44     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#45     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#46     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#47     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#48     RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:2824:13)
#49     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#50     RenderStack.performLayout (package:flutter/src/rendering/stack.dart:520:15)
#51     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#52     __RenderTheatre&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#53     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#54     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#55     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#56     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#57     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#58     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#59     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#60     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#61     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#62     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:109:13)
#63     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
#64     RenderView.performLayout (package:flutter/src/rendering/view.dart:147:13)
#65     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1445:7)
#66     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:704:18)
#67     AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:793:23)
#68     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding&GestureBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:208:5)
#69     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
#70     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
#71     AutomatedTestWidgetsFlutterBinding.pump.<anonymous closure> (package:flutter_test/src/binding.dart:704:9)
#74     TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:44)
#75     AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:691:27)
#76     WidgetTester.pumpWidget.<anonymous closure> (package:flutter_test/src/widget_tester.dart:227:22)
#79     TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:44)
#80     WidgetTester.pumpWidget (package:flutter_test/src/widget_tester.dart:224:27)
#81     main.<anonymous closure> (file:///C:/projects/flutter%20sdk/packages/flutter/test/widgets/drawer_test.dart:187:18)
#83     main.<anonymous closure> (file:///C:/projects/flutter%20sdk/packages/flutter/test/widgets/drawer_test.dart:183:47)
#84     testWidgets.<anonymous closure>.<anonymous closure> (package:flutter_test/src/widget_tester.dart:72:23)
#85     TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:555:19)
#99     AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:899:17)
#101    AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:887:39)
(elided 34 frames from class _FakeAsync, package dart:async, and package stack_trace)
The following RenderObject was being processed when the exception was fired:
  RenderPadding#fee52 relayoutBoundary=up9
  creator: Padding ← Container ← IconTheme ← Builder ← Listener ← _GestureSemantics ←
  RawGestureDetector ← GestureDetector ← InkWell ← DefaultTextStyle ← AnimatedDefaultTextStyle ←
  _InkFeatures-[GlobalKey#bd2f0 ink renderer] ← ⋯
  parentData: <none> (can use size)
  constraints: BoxConstraints(88.0<=w<=800.0, 36.0<=h<=600.0)
  size: Size(116.0, 36.0)
  padding: EdgeInsets(16.0, 0.0, 16.0, 0.0)
  textDirection: ltr
This RenderObject had the following descendants (showing up to depth 5):
  RenderPositionedBox#68651 relayoutBoundary=up10
    RenderParagraph#1b65c relayoutBoundary=up11
════════════════════════════════════════════════════════════════════════════════════════════════════
05:49 +1899 ~25 -1: C:\projects\flutter sdk\packages\flutter\test\widgets\drawer_test.dart: Drawer navigator back button [E]                                                                           
  Test failed. See exception logs above.
  The test description was: Drawer navigator back button
@Hixie Hixie added a: tests "flutter test", flutter_test, or one of our tests framework flutter/packages/flutter repository. See also f: labels. platform-windows Building on or for Windows specifically team: flakes labels Jul 23, 2018
@Hixie Hixie added this to the Goals milestone Jul 23, 2018
@Hixie
Copy link
Contributor Author

Hixie commented Aug 4, 2018

I just saw this with packages\flutter\test\material\date_picker_test.dart:

00:42 +600 ~6: E:\b\build\slave\Windows\build\flutter\packages\flutter\test\material\date_picker_test.dart: showDatePicker render picker with intrinsic dimensions                                     
══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════��═══════
The following assertion was thrown during performLayout():
The intrinsic dimension methods of the RenderPadding class returned values that violate the
intrinsic protocol contract.
The following failure was detected:
 * getMinIntrinsicHeight(Infinity) returned a larger value (40.0) than
   getMaxIntrinsicHeight(Infinity) (24.0)
If you are not writing your own RenderBox subclass, then this is not
your fault. Contact support: https://github.com/flutter/flutter/issues/new

When the exception was thrown, this was the stack:
#0      RenderBox.debugAssertDoesMeetConstraints.<anonymous closure> (package:flutter/src/rendering/box.dart:1823:11)
#1      RenderBox.debugAssertDoesMeetConstraints (package:flutter/src/rendering/box.dart:1833:6)

00:42 +601 ~6: E:\b\build\slave\Windows\build\flutter\packages\flutter\test\material\drawer_test.dart: Drawer control test                                                                             
00:42 +601 ~6: E:\b\build\slave\Windows\build\flutter\packages\flutter\test\material\date_picker_test.dart: showDatePicker render picker with intrinsic dimensions                                     
#2      RenderBox.size=.<anonymous closure> (package:flutter/src/rendering/box.dart:1553:17)
#3      RenderBox.size= (package:flutter/src/rendering/box.dart:1553:65)
#4      RenderPadding.performLayout (package:flutter/src/rendering/shifted_box.dart:202:5)
#5      RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#6      RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:264:13)
#7      RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#8      _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#9      RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#10     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#11     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#12     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#13     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#14     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#15     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#16     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#17     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#18     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#19     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#20     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#21     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#22     RenderStack.performLayout (package:flutter/src/rendering/stack.dart:559:15)
#23     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#24     RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:264:13)
#25     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#26     _RenderSingleChildViewport.performLayout (package:flutter/src/widgets/single_child_scroll_view.dart:479:13)
#27     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#28     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#29     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#30     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#31     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#32     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#33     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#34     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#35     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#36     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#37     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#38     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#39     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#40     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#41     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#42     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#43     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#44     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#45     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#46     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#47     _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1175:11)
#48     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#49     RenderIntrinsicHeight.performLayout (package:flutter/src/rendering/proxy_box.dart:697:13)
#50     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#51     RenderIntrinsicWidth.performLayout (package:flutter/src/rendering/proxy_box.dart:632:13)
#52     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#53     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#54     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#55     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#56     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#57     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#58     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#59     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#60     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#61     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#62     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#63     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#64     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#65     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#66     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#67     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#68     RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:2859:13)
#69     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#70     RenderStack.performLayout (package:flutter/src/rendering/stack.dart:520:15)
#71     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#72     __RenderTheatre&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#73     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#74     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#75     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#76     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#77     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#78     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#79     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#80     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#81     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#82     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#83     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#84     RenderView.performLayout (package:flutter/src/rendering/view.dart:147:13)
#85     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1439:7)
#86     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:698:18)
#87     AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:793:23)
#88     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding&GestureBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:208:5)
#89     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
#90     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
#91     AutomatedTestWidgetsFlutterBinding.pump.<anonymous closure> (package:flutter_test/src/binding.dart:704:9)
#94     TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:44)
#95     AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:691:27)
#96     WidgetTester.pumpWidget.<anonymous closure> (package:flutter_test/src/widget_tester.dart:227:22)
#99     TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:44)
#100    WidgetTester.pumpWidget (package:flutter_test/src/widget_tester.dart:224:27)
#101    _tests.<anonymous closure> (file:///E:/b/build/slave/Windows/build/flutter/packages/flutter/test/material/date_picker_test.dart:105:18)
#103    _tests.<anonymous closure> (file:///E:/b/build/slave/Windows/build/flutter/packages/flutter/test/material/date_picker_test.dart:104:58)
#104    testWidgets.<anonymous closure>.<anonymous closure> (package:flutter_test/src/widget_tester.dart:72:23)
#105    TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:555:19)
#119    AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:899:17)
#121    AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:887:39)
(elided 34 frames from class _FakeAsync, package dart:async, and package stack_trace)

The following RenderObject was being processed when the exception was fired:
  RenderPadding#953d1 relayoutBoundary=up9 NEEDS-PAINT
  creator: Padding ← ConstrainedBox ← Semantics ← Semantics ← Listener ← RawGestureDetector ←
  GestureDetector ← Tooltip ← Listener ← _GestureSemantics ← RawGestureDetector ← GestureDetector ←
  ⋯
  parentData: <none> (can use size)
  constraints: BoxConstraints(48.0<=w<=Infinity, 48.0<=h<=Infinity)
  size: Size(48.0, 48.0)
  padding: EdgeInsets.all(8.0)
  textDirection: ltr
This RenderObject had the following descendants (showing up to depth 5):
  RenderConstrainedBox#fe3aa relayoutBoundary=up10 NEEDS-PAINT
    RenderPositionedBox#4e1ed NEEDS-PAINT
      RenderSemanticsAnnotations#1d79f relayoutBoundary=up1 NEEDS-PAINT
        RenderExcludeSemantics#ed39e relayoutBoundary=up2 NEEDS-PAINT
          RenderConstrainedBox#aa7df relayoutBoundary=up3 NEEDS-PAINT
════════════════════════════════════════════════════════════════════════════════════════════════════
══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
The following assertion was thrown during performLayout():
The intrinsic dimension methods of the RenderPadding class returned values that violate the
intrinsic protocol contract.
The following failure was detected:
 * getMinIntrinsicHeight(Infinity) returned a larger value (40.0) than
   getMaxIntrinsicHeight(Infinity) (24.0)
If you are not writing your own RenderBox subclass, then this is not
your fault. Contact support: https://github.com/flutter/flutter/issues/new

When the exception was thrown, this was the stack:
#0      RenderBox.debugAssertDoesMeetConstraints.<anonymous closure> (package:flutter/src/rendering/box.dart:1823:11)
#1      RenderBox.debugAssertDoesMeetConstraints (package:flutter/src/rendering/box.dart:1833:6)
#2      RenderBox.size=.<anonymous closure> (package:flutter/src/rendering/box.dart:1553:17)
#3      RenderBox.size= (package:flutter/src/rendering/box.dart:1553:65)
#4      RenderPadding.performLayout (package:flutter/src/rendering/shifted_box.dart:202:5)
#5      RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#6      RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:264:13)
#7      RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#8      _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#9      RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#10     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#11     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#12     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#13     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#14     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#15     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#16     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#17     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#18     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#19     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#20     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#21     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#22     RenderStack.performLayout (package:flutter/src/rendering/stack.dart:559:15)
#23     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#24     RenderConstrainedBox.performLayout (package:flutter/src/rendering/proxy_box.dart:264:13)
#25     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#26     _RenderSingleChildViewport.performLayout (package:flutter/src/widgets/single_child_scroll_view.dart:479:13)
#27     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#28     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#29     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#30     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#31     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#32     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#33     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#34     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#35     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#36     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#37     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#38     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#39     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#40     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#41     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#42     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#43     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#44     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#45     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#46     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#47     _RenderCustomClip.performLayout (package:flutter/src/rendering/proxy_box.dart:1175:11)
#48     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#49     RenderIntrinsicHeight.performLayout (package:flutter/src/rendering/proxy_box.dart:697:13)
#50     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#51     RenderIntrinsicWidth.performLayout (package:flutter/src/rendering/proxy_box.dart:632:13)
#52     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#53     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#54     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#55     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#56     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#57     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#58     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#59     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#60     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#61     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#62     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#63     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#64     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#65     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#66     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#67     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#68     RenderOffstage.performLayout (package:flutter/src/rendering/proxy_box.dart:2859:13)
#69     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#70     RenderStack.performLayout (package:flutter/src/rendering/stack.dart:520:15)
#71     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#72     __RenderTheatre&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#73     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#74     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#75     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#76     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#77     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#78     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#79     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#80     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#81     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#82     _RenderProxyBox&RenderBox&RenderObjectWithChildMixin&RenderProxyBoxMixin.performLayout (package:flutter/src/rendering/proxy_box.dart:110:13)
#83     RenderObject.layout (package:flutter/src/rendering/object.dart:1564:7)
#84     RenderView.performLayout (package:flutter/src/rendering/view.dart:147:13)
#85     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1439:7)
#86     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:698:18)
#87     AutomatedTestWidgetsFlutterBinding.drawFrame (package:flutter_test/src/binding.dart:793:23)
#88     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding&GestureBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:208:5)
#89     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
#90     _TestWidgetsFlutterBinding&BindingBase&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
#91     AutomatedTestWidgetsFlutterBinding.pump.<anonymous closure> (package:flutter_test/src/binding.dart:704:9)
#94     TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:44)
#95     AutomatedTestWidgetsFlutterBinding.pump (package:flutter_test/src/binding.dart:691:27)
#96     WidgetTester.pumpWidget.<anonymous closure> (package:flutter_test/src/widget_tester.dart:227:22)
#99     TestAsyncUtils.guard (package:flutter_test/src/test_async_utils.dart:69:44)
#100    WidgetTester.pumpWidget (package:flutter_test/src/widget_tester.dart:224:27)
#101    _tests.<anonymous closure> (file:///E:/b/build/slave/Windows/build/flutter/packages/flutter/test/material/date_picker_test.dart:105:18)
#103    _tests.<anonymous closure> (file:///E:/b/build/slave/Windows/build/flutter/packages/flutter/test/material/date_picker_test.dart:104:58)
#104    testWidgets.<anonymous closure>.<anonymous closure> (package:flutter_test/src/widget_tester.dart:72:23)
#105    TestWidgetsFlutterBinding._runTestBody (package:flutter_test/src/binding.dart:555:19)
#119    AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:899:17)
#121    AutomatedTestWidgetsFlutterBinding.runTest.<anonymous closure> (package:flutter_test/src/binding.dart:887:39)
(elided 34 frames from class _FakeAsync, package dart:async, and package stack_trace)

The following RenderObject was being processed when the exception was fired:
  RenderPadding#6bf4d relayoutBoundary=up9 NEEDS-LAYOUT NEEDS-PAINT
  creator: Padding ← ConstrainedBox ← Semantics ← Semantics ← Listener ← RawGestureDetector ←
  GestureDetector ← Tooltip ← Listener ← _GestureSemantics ← RawGestureDetector ← GestureDetector ←
  ⋯
  parentData: <none> (can use size)
  constraints: BoxConstraints(48.0<=w<=Infinity, 48.0<=h<=Infinity)
  size: Size(48.0, 48.0)
  padding: EdgeInsets.all(8.0)
  textDirection: ltr
This RenderObject had the following descendants (showing up to depth 5):
  RenderConstrainedBox#1c6f3 relayoutBoundary=up10 NEEDS-PAINT
    RenderPositionedBox#1c21e NEEDS-PAINT
      RenderSemanticsAnnotations#876a8 relayoutBoundary=up1 NEEDS-PAINT
        RenderExcludeSemantics#facbf relayoutBoundary=up2 NEEDS-PAINT
          RenderConstrainedBox#0432c relayoutBoundary=up3 NEEDS-PAINT
════════════════════════════════════════════════════════════════════════════════════════════════════
══╡ EXCEPTION CAUGHT BY FLUTTER TEST FRAMEWORK ╞════════════════════════════════════════════════════
The following message was thrown:
Multiple exceptions (2) were detected during the running of the current test, and at least one was
unexpected.
════════════════════════════════════════════════════════════════════════════════════════════════════

00:42 +601 ~6 -1: E:\b\build\slave\Windows\build\flutter\packages\flutter\test\material\date_picker_test.dart: showDatePicker render picker with intrinsic dimensions [E]                              
  Test failed. See exception logs above.
  The test description was: render picker with intrinsic dimensions

RenderPadding again, though a different test...

@Hixie
Copy link
Contributor Author

Hixie commented Aug 4, 2018

Those two were also RenderPadding...

@Hixie Hixie self-assigned this Aug 4, 2018
@DanTup
Copy link
Contributor

DanTup commented Oct 23, 2018

Not sure if this is the same issue - just seen a similar failure on my PR on a Windows build, but it's a different test (date_picker_test):

The following failure was detected:
 * getMinIntrinsicWidth(Infinity) returned a larger value (40.0) than getMaxIntrinsicWidth(Infinity)
   (24.0)
If you are not writing your own RenderBox subclass, then this is not
your fault. Contact support: https://github.com/flutter/flutter/issues/new
When the exception was thrown, this was the stack:
#0      RenderBox.debugAssertDoesMeetConstraints.<anonymous closure> (package:flutter/src/rendering/box.dart:1813:11)
#1      RenderBox.debugAssertDoesMeetConstraints (package:flutter/src/rendering/box.dart:1823:6)
#2      RenderBox.size=.<anonymous closure> (package:flutter/src/rendering/box.dart:1543:17)
#3      RenderBox.size= (package:flutter/src/rendering/box.dart:1543:65)

https://cirrus-ci.com/task/5809820080799744

@Hixie
Copy link
Contributor Author

Hixie commented Oct 29, 2018

Interesting, that one is RenderPadding too...

@alanrussian
Copy link
Contributor

alanrussian commented Oct 29, 2018

I have a CL in g3 that is reliably producing this exception.

══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
The following assertion was thrown during performLayout():
The intrinsic dimension methods of the RenderPadding class returned values that violate the
intrinsic protocol contract.
The following failures was detected:
 * getMinIntrinsicWidth(Infinity) returned a larger value (272.0) than
   getMaxIntrinsicWidth(Infinity) (240.0)
 * getMinIntrinsicWidth(792.0) returned a larger value (272.0) than getMaxIntrinsicWidth(792.0)
   (240.0)
If you are not writing your own RenderBox subclass, then this is not
your fault. Contact support: https://github.com/flutter/flutter/issues/new

I was just changing the route transitions to use OpenUpwardsPageTransitionsBuilder().

The Padding is coming from a ListTile in my case.

@Hixie
Copy link
Contributor Author

Hixie commented Oct 30, 2018

@alanrussian Are you able to reduce that to a single main.dart you can upload here? Being able to reproduce it has been the issue here...

@alanrussian
Copy link
Contributor

I haven't tried but that sounds unlikely.

If you need that to go forward, you can remove customer blocker and I guess I can suppress the test I have that's failing for the time being...

@kf6gpe
Copy link
Contributor

kf6gpe commented Nov 7, 2018

It would really help to get a standalone main.dart. I'll drop the customer blocker label from this until you have time to put it together for us, and you can suppress the test at the moment --- feel free to tag again if you disagree. Thanks!

@tvolkert
Copy link
Contributor

Just witnessed this with date_picker_test.dart as well.

https://gist.github.com/tvolkert/9cb808b5a2ef8f9248eef048887cb8d2

@HansMuller
Copy link
Contributor

The issue cropped up again today after an engine roll, #24345. Failure was on Cirrus/Windows:

01:30 +904 ~11: C:\Windows\Temp\flutter sdk\packages\flutter\test\material\input_decorator_test.dart: InputDecorator prefix/suffix widgets
══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════
The following assertion was thrown during performLayout():
The intrinsic dimension methods of the RenderPadding class returned values that violate the
intrinsic protocol contract.
The following failures was detected:
 * getMinIntrinsicHeight(Infinity) returned a larger value (24.0) than
   getMaxIntrinsicHeight(Infinity) (16.0)
 * getMinIntrinsicHeight(600.0) returned a larger value (24.0) than getMaxIntrinsicHeight(600.0)
   (16.0)

@liyuqian pointed out that all Cirrus tests have to be passed before the merging of an auto-roll, so having the same test fail afterwards seems odd.

Re-running the tests until they pass :-).

@gspencergoog
Copy link
Contributor

The test runnings will continue until the build succeeds!

Here's another instance, again on Cirrus/Windows: https://cirrus-ci.com/task/4917027888168960

@justinmc
Copy link
Contributor

Also happened to me on Cirrus Windows https://cirrus-ci.com/task/5637587874086912

@justinmc
Copy link
Contributor

I saw this again: https://cirrus-ci.com/task/4667445715402752

The following assertion was thrown during performLayout():
The intrinsic dimension methods of the RenderPadding class returned values that violate the
intrinsic protocol contract.
The following failures was detected:
 * getMinIntrinsicWidth(Infinity) returned a larger value (168.0) than
   getMaxIntrinsicWidth(Infinity) (120.0)
 * getMinIntrinsicWidth(280.0) returned a larger value (168.0) than getMaxIntrinsicWidth(280.0)
   (120.0)
If you are not writing your own RenderBox subclass, then this is not
your fault. Contact support: https://github.com/flutter/flutter/issues/new?template=BUG.md
When the exception was thrown, this was the stack:
#0      RenderBox.debugAssertDoesMeetConstraints.<anonymous closure> (package:flutter/src/rendering/box.dart:1813:11)

@gspencergoog gspencergoog changed the title drawer_test.dart sometimes claims RenderPadding violates the intrinsic protocol contract Unit tests running on Windows sometimes claim RenderPadding violates the intrinsic protocol contract May 16, 2019
@gspencergoog
Copy link
Contributor

I've seen a bunch of these lately, and they all happen only on Windows, usually with date_picker_test.dart, but there have been others. I suggest we skip those tests on Windows for the time being, in the interest of productivity, until we can figure out what's going on. We still have coverage on other platforms for those tests.

Some Cirrus logs from the same PR where it failed twice in a row and then succeeded:
https://api.cirrus-ci.com/v1/task/5692773848580096/logs/test_all.log
https://api.cirrus-ci.com/v1/task/6352596722253824/logs/test_all.log

Another recent example:
https://api.cirrus-ci.com/v1/task/6347577918750720/logs/test_all.log

gspencergoog added a commit that referenced this issue May 16, 2019
Date picker tests have been flaky on Windows for a long time, and repeatedly require restarting of bots. In the interest of productivity, disabling them on Windows.

Related to #19696
kiku-jw pushed a commit to kiku-jw/flutter that referenced this issue Jun 14, 2019
Date picker tests have been flaky on Windows for a long time, and repeatedly require restarting of bots. In the interest of productivity, disabling them on Windows.

Related to flutter#19696
@aam
Copy link
Member

aam commented Jul 9, 2019

https://gist.github.com/aam/cbf08d577d5226305072eaa2077083b1 captures output of debugDumpRenderTree at the point when assertion failed.

@Hixie
Copy link
Contributor Author

Hixie commented Jul 9, 2019

Tracing the code further i bet the bug is in the TextPainter or dart:ui's Paragraph logic. We should probably add some asserts down in TextPainter that verifies that the intrinsic values we get from there make sense.

dart-bot pushed a commit to dart-lang/sdk that referenced this issue Jul 11, 2019
…en if it can't add method extractor.

The fact that function resolution returned a target led to incorrect range merging for polymorphic instance call sites.

Fixes flutter/flutter#19696
Fixes #37348

Change-Id: If6c53dd322f9788df241baf7071b98906336d2e5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/108860
Commit-Queue: Alexander Aprelev <aam@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
@Hixie Hixie removed their assignment Jul 16, 2019
@tvolkert
Copy link
Contributor

Reported to be fixed by dart-lang/sdk@7139a2a, which will roll into Flutter soon!

@Hixie
Copy link
Contributor Author

Hixie commented Aug 13, 2019

cc @aam this is fixed right?

@aam
Copy link
Member

aam commented Aug 13, 2019

cc @aam this is fixed right?

Right.

@github-actions
Copy link

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 15, 2021
@flutter-triage-bot flutter-triage-bot bot added the c: flake Tests that sometimes, but not always, incorrectly pass label Jul 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
a: tests "flutter test", flutter_test, or one of our tests c: flake Tests that sometimes, but not always, incorrectly pass customer: mulligan (g3) framework flutter/packages/flutter repository. See also f: labels. platform-windows Building on or for Windows specifically
Projects
None yet
Development

No branches or pull requests

9 participants