RenderWidgetHostInputEventRouterTest.DoNotChangeTargetViewDuringTouchScrollGesture fails in Viz |
||||||
Issue descriptionThe content_unittests RenderWidgetHostInputEventRouterTest.DoNotChangeTargetViewDuringTouchScrollGesture currently fails when running with --enable-viz With the following error: 0 0x000004be308c base::debug::StackTrace::StackTrace() #1 0x000004be2c01 base::debug::(anonymous namespace)::StackDumpSignalHandler() #2 0x7f5db0358330 <unknown> #3 0x000003ed0d3f content::RenderWidgetHostInputEventRouter::FindEventTarget() #4 0x000003ed2cf0 content::RenderWidgetHostInputEventRouter::RouteTouchEvent() #5 0x000001ece90f content::RenderWidgetHostInputEventRouterTest_DoNotChangeTargetViewDuringTouchScrollGesture_Test::TestBody() #6 0x0000028bb426 testing::Test::Run() #7 0x0000028bbe40 testing::TestInfo::Run() #8 0x0000028bc327 testing::TestCase::Run() #9 0x0000028c29c7 testing::internal::UnitTestImpl::RunAllTests() #10 0x0000028c2617 testing::UnitTest::Run() #11 0x000004240192 base::TestSuite::Run() #12 0x0000042487d7 base::(anonymous namespace)::LaunchUnitTestsInternal() #13 0x00000424864b base::LaunchUnitTests() #14 0x000002512576 main #15 0x7f5dab816f45 __libc_start_main #16 0x0000014b202a _start The first run of this appeared in: https://ci.chromium.org/buildbot/chromium.fyi/Linux%20Viz/278 and was introduced by: https://chromium.googlesource.com/chromium/src/+/f1677be12bc5bd2f1445fb3fd82ce3983b677cf9 kenrb@ could you please take a look?
,
May 15 2018
,
May 16 2018
Still failing % rr ctut --enable-features=VizDisplayCompositor --gtest_filter=RenderWidgetHostInputEventRouterTest.DoNotChangeTargetViewDuringTouchScrollGesture ninja: Entering directory `out_desktop/Release' [4/4] LINK ./content_unittests IMPORTANT DEBUGGING NOTE: batches of tests are run inside their own process. For debugging a test inside a debugger, use the --gtest_filter=<your_test_name> flag along with --single-process-tests. Using sharding settings from environment. This is shard 0/1 Using 1 parallel jobs. Note: Google Test filter = RenderWidgetHostInputEventRouterTest.DoNotChangeTargetViewDuringTouchScrollGesture [==========] Running 1 test from 1 test case. [----------] Global test environment set-up. [----------] 1 test from RenderWidgetHostInputEventRouterTest [ RUN ] RenderWidgetHostInputEventRouterTest.DoNotChangeTargetViewDuringTouchScrollGesture [151012:151012:0516/135020.295237:1390620588924:FATAL:render_widget_host_input_event_router.cc(50)] Check failed: frame_sink_id.is_valid(). #0 0x7ff56941fa2c base::debug::StackTrace::StackTrace() #1 0x7ff569360a2b logging::LogMessage::~LogMessage() #2 0x7ff5676d1d8f content::RenderWidgetHostInputEventRouter::FindViewAtLocation() #3 0x7ff5676d5e80 content::RenderWidgetHostInputEventRouter::FindTargetSynchronously() #4 0x7ff5676d5fd2 content::RenderWidgetHostInputEventRouter::FindTargetSynchronously() #5 0x7ff5676e579b content::RenderWidgetTargeter::FindTargetAndDispatch() #6 0x00000106f790 content::RenderWidgetHostInputEventRouterTest_DoNotChangeTargetViewDuringTouchScrollGesture_Test::TestBody() #7 0x000001975aa2 testing::Test::Run() #8 0x000001976570 testing::TestInfo::Run() #9 0x000001976a77 testing::TestCase::Run() #10 0x000001982487 testing::internal::UnitTestImpl::RunAllTests() #11 0x00000198200d testing::UnitTest::Run() #12 0x000001aa9ea1 base::TestSuite::Run() #13 0x000001ab1df0 base::(anonymous namespace)::LaunchUnitTestsInternal() #14 0x000001ab1c40 base::LaunchUnitTests() #15 0x000001871266 main #16 0x7ff55f5422b1 __libc_start_main #17 0x00000067202a _start
,
Jun 21 2018
Reproduced today ahead of triage
,
Jun 22 2018
Hey Ken, Could you take a look at this?
,
Jul 20
So the issue here is that RenderWidgetHostInputEventRouter::FindViewAtLocation uses a completely different method for determining the target while in Viz mode. This test has some heavy overrides of the classic hit testing path, to force what target is used when. With these the test never actually set sizes, or correct FrameSinkIds, on the views in use. I'm working on a patch that lets the test also mock out the HitTestQuery data that matches what it was doing for classic mode. Thus allowing the Viz path to work.
,
Jul 20
,
Jul 27
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/7751fadb5e97f540dd822df3f87aad61ad7b6dd7 commit 7751fadb5e97f540dd822df3f87aad61ad7b6dd7 Author: Jonathan Ross <jonross@chromium.org> Date: Fri Jul 27 18:39:39 2018 Mock Viz Hit Testing in RenderWidgetHostInputEventRouterTest RenderWidgetHostInputEventRouterTest has some heavy overrides of the classic hit testing path, to force what target is used when. With these the test never actually set sizes, or correct FrameSinkIds, on the views in use. However in Viz RenderWidgetHostInputEventRouter::FindViewAtLocation uses a completely different method for determining targets while in Viz Hit Testing Mode. This change updates the test to als provide mock hit testing data. A test wrapper HostFrameSinkManagerTestApi was added to allow for the setting of hit testing data while in unittests. Or in testing where Viz is not actually initialized. TEST=RenderWidgetHostInputEventRouterTest Bug: 796605 Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel Change-Id: I66c4322f70fdd8c5be07c3560110519153370cff Reviewed-on: https://chromium-review.googlesource.com/1145773 Commit-Queue: Jonathan Ross <jonross@chromium.org> Reviewed-by: Ria Jiang <riajiang@chromium.org> Reviewed-by: Sadrul Chowdhury <sadrul@chromium.org> Cr-Commit-Position: refs/heads/master@{#578723} [modify] https://crrev.com/7751fadb5e97f540dd822df3f87aad61ad7b6dd7/components/viz/host/host_frame_sink_manager.h [modify] https://crrev.com/7751fadb5e97f540dd822df3f87aad61ad7b6dd7/components/viz/test/BUILD.gn [add] https://crrev.com/7751fadb5e97f540dd822df3f87aad61ad7b6dd7/components/viz/test/host_frame_sink_manager_test_api.cc [add] https://crrev.com/7751fadb5e97f540dd822df3f87aad61ad7b6dd7/components/viz/test/host_frame_sink_manager_test_api.h [modify] https://crrev.com/7751fadb5e97f540dd822df3f87aad61ad7b6dd7/content/browser/renderer_host/render_widget_host_input_event_router_unittest.cc [modify] https://crrev.com/7751fadb5e97f540dd822df3f87aad61ad7b6dd7/testing/buildbot/filters/viz.content_unittests.filter
,
Jul 27
|
||||||
►
Sign in to add a comment |
||||||
Comment 1 by jonr...@chromium.org
, Mar 12 2018