https://cs.chromium.org/chromium/src/content/shell/browser/layout_test/blink_test_controller.cc?rcl=515d633f32b380efe7b5f609472e6e1891bb0c57&l=416
BlinkTestController::PrepareForLayoutTest does not wait for shell resize to complete.
This causes occational failures if SVG-1.1 tests (which require size of 640x320) and regular tests (sized 800x600) are mixed together.
To demonstrate the bug, run SVG-1.1 and regular tests fully parallel:
python third_party/WebKit/Tools/Scripts/run-webkit-tests svg external/wpt/css/CSS2/positioning -f
~100/3000 tests will fail because window size was incorrect.
I've tried fixing this but my knowledge of resize code flow is non-existent. One thing I've noticed is that in all the failing tests RenderWidgetHostImpl::NotifyScreenInfoChanged gets called after the test was already started.
I've also tried using browser_test_utils::WaitForResizeComplete and it did not help.
This bug is best handled by someone who has good understanding of interaction between host and view.
Comment 1 by kereliuk@chromium.org
, Nov 29 2017