New issue
Advanced search Search tips

Issue 665058 link

Starred by 2 users

Issue metadata

Status: WontFix
Owner: ----
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 477150



Sign in to add a comment

OOPIF support in layout tests harness: EventSender drag-and-drop simulation

Project Member Reported by lukasza@chromium.org, Nov 14 2016

Issue description

After recent changes, test_runner::EventSender works against a widget representing a local root.  This is sufficient in most cases, but OOPIFs can still be encountered in other cases - drag-and-drop being one of them.

Because of lack of OOPIFs support in EventSender, we get a crash when running http/tests/local/drag-over-remote-content.html in --site-per-process mode:

$ ninja -C out/gn ... blink_tests
$ third_party/WebKit/Tools/Scripts/run-webkit-tests -t gn --additional-drt-flag=--site-per-process http/tests/local/drag-over-remote-content.html

STDERR: [1:1:1114/100357:1022817522310:FATAL:WebRemoteFrameImpl.cpp(61)] Check failed: false. 
STDERR: #0 0x0000004d39e1 __interceptor_backtrace
STDERR: #1 0x7f96538088c3 base::debug::StackTrace::StackTrace()
STDERR: #2 0x7f965387b84a logging::LogMessage::~LogMessage()
STDERR: #3 0x7f96480dd2ec blink::WebRemoteFrameImpl::toWebLocalFrame()
STDERR: #4 0x7f9647792f97 test_runner::EventSender::DoDragDrop()
STDERR: #5 0x7f9647eae3be blink::ChromeClientImpl::startDragging()
STDERR: #6 0x7f9642c6997b blink::DragController::doSystemDrag()
STDERR: #7 0x7f9642c67d55 blink::DragController::startDrag()
STDERR: #8 0x7f964232eb51 blink::MouseEventManager::tryStartDrag()
STDERR: #9 0x7f964232d890 blink::MouseEventManager::handleDrag()
STDERR: #10 0x7f964232ded0 blink::MouseEventManager::handleMouseDraggedEvent()
STDERR: #11 0x7f96423083ae blink::EventHandler::handleMouseMoveOrLeaveEvent()
STDERR: #12 0x7f9642307423 blink::EventHandler::handleMouseMoveEvent()
STDERR: #13 0x7f9647f49a6c blink::PageWidgetEventHandler::handleMouseMove()
STDERR: #14 0x7f9647f4979b blink::PageWidgetDelegate::handleInputEvent()
STDERR: #15 0x7f9648047c50 blink::WebFrameWidgetImpl::handleInputEvent()
STDERR: #16 0x7f9647794ff0 test_runner::EventSender::HandleInputEventOnViewOrPopup()
STDERR: #17 0x7f9647793e2b test_runner::EventSender::ReplaySavedEvents()
STDERR: #18 0x7f964778d4f4 test_runner::EventSender::PointerUp()
STDERR: #19 0x7f9647780236 test_runner::EventSenderBindings::MouseUp()
STDERR: #20 0x7f96477af39c gin::internal::Dispatcher<>::DispatchToCallback()
STDERR: #21 0x7f964a68186a v8::internal::FunctionCallbackArguments::Call()
 
Cc: dcheng@chromium.org
Is EventSender::mainFrameWidget() a temporary thing?  Shouldn't we be using EventSender::widget() instead?

Or is this a sort of a hit-testing / event routing problem (i.e. what should we do when a test asks EventSender to deliver events at a location outside of EventSender::widget)?  Maybe for now we could add some DCHECKs into EventSender that would enforce that events EventSender simulates are within the bounds of EventSender::widget?  In the future such events could be coordinates via the browser.

WDYT?
Project Member

Comment 2 by bugdroid1@chromium.org, Nov 14 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8821599394352a2bd861d179b97d70b984e384f1

commit 8821599394352a2bd861d179b97d70b984e384f1
Author: lukasza <lukasza@chromium.org>
Date: Mon Nov 14 23:47:49 2016

--site-per-process exception for http/tests/local/drag-over-remote-content.html

BUG= 665058 
NOTRY=true

Review-Url: https://codereview.chromium.org/2495383002
Cr-Commit-Position: refs/heads/master@{#431984}

[modify] https://crrev.com/8821599394352a2bd861d179b97d70b984e384f1/third_party/WebKit/LayoutTests/FlagExpectations/site-per-process

Project Member

Comment 3 by sheriffbot@chromium.org, Nov 15 2017

Labels: Hotlist-Recharge-Cold
Status: Untriaged (was: Available)
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Status: WontFix (was: Untriaged)
I think it is okay to close this bug as WontFix - we've been testing OOPIF support for drag-and-drop from browser tests / interactive ui tests (instead of from layout tests, via EventSender).
Labels: Test-Layout
Summary: OOPIF support in layout tests harness: EventSender drag-and-drop simulation (was: test_runner::EventSender drag-and-drop simulation doesn't support OOPIFs)

Sign in to add a comment