New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 916174 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jan 9
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Feature



Sign in to add a comment

Tast: Add helper function to resize/drag window

Project Member Reported by ricardoq@chromium.org, Dec 18

Issue description

Add a helper function in Tast to resize / drag a window.
It should have the option to simulate the resize/dragging with both:
  - Touch events (when a touch display is avaialble)
  - Mouse/Touchpad (when such input device is available)
 
it should be possible to do it by injecting evemu events.

Possible issues:
  - mouse events are relative to the mouse cursor. they are not absolute. the key is to position the mouse in the right positions and then "evemu-play" the drag/resize operation.

  - touch events are absolute. 
Cc: nya@chromium.org derat@chromium.org adlr@chromium.org
Labels: -Type-Bug Type-Feature
Please update the input package (https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/HEAD/src/chromiumos/tast/local/input/) to support injecting touch/mouse events instead of shelling out to evemu-play.

And please also keep the UI-specific parts of this (e.g. drag/resize) within your test until there are more users. In Tast, we generally avoid expanding API surfaces until there are enough potential users to guide the design.
derat@ I'll do that. thanks!
Project Member

Comment 4 by bugdroid1@chromium.org, Jan 9

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/platform/tast-tests/+/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0

commit 623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0
Author: Ricardo Quesada <ricardoq@google.com>
Date: Wed Jan 09 07:25:55 2019

tast: add Touch event support to event.

Add Multi Touch support to event & device.
Add example that shows how to the use the API.
Split intput.go in three: raw.go, keyboard.go and touch.go
Split intput_test.go in two: keyboard_test.go and touch_test.go
Add touch.go example.
Add unittest.

This CL adds the needed functionality that will be used to create
move/resize/drag tests for ARC++.

Limitations/scope: This CL does not try to implement the full
multi-touch specification. Only the one needed to perform certain
tests.

BUG= chromium:916174 
TEST=tast run DUT example.Keyboard
TEST=tast run DUT example.Touch
TEST=fast_build.sh -T
TEST=tested on Eve, Nocture, Caroline, Kevin and Scarlet. Works as expected.
Change-Id: Ic7cca5d085e31f28d8909d9ceebff02bbbf02ff7
Reviewed-on: https://chromium-review.googlesource.com/1379305
Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
Tested-by: Ricardo Quesada <ricardoq@chromium.org>
Reviewed-by: Ricardo Quesada <ricardoq@chromium.org>

[rename] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/keyboard_test.go
[delete] https://crrev.com/602328a6dae2c4f6a3bd4c561d6c2002990a60bd/src/chromiumos/tast/local/input/event.go
[add] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/bundles/cros/example/touch.go
[add] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/touch.go
[add] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/ioctl.go
[add] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/raw.go
[modify] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/device.go
[add] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/touch_test.go
[add] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/keyboard.go
[modify] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/input/device_test.go
[rename] https://crrev.com/623acd4fcd0ebc5dc81ec8c765c2c2e12f10fde0/src/chromiumos/tast/local/bundles/cros/example/keyboard.go

Status: Fixed (was: Untriaged)

Sign in to add a comment