| Index: third_party/WebKit/LayoutTests/imported/wpt/touch-events/touch-retargeting.html
|
| diff --git a/third_party/WebKit/LayoutTests/imported/wpt/touch-events/touch-retargeting.html b/third_party/WebKit/LayoutTests/imported/wpt/touch-events/touch-retargeting.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..8d3e83f054ab8e7f904a529d60b7308b0f852084
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/imported/wpt/touch-events/touch-retargeting.html
|
| @@ -0,0 +1,54 @@
|
| +<!DOCTYPE HTML>
|
| +<html>
|
| +<head>
|
| +<title>TouchEvent Retargeting Tests</title>
|
| +<script src="/resources/testharness.js"></script>
|
| +<script src="/resources/testharnessreport.js"></script>
|
| +</head>
|
| +<body>
|
| +<div id="host0"></div>
|
| +<div id="host1"></div>
|
| +<script>
|
| +var host0 = document.getElementById('host0');
|
| +var root0 = host0.attachShadow({ mode: 'open' });
|
| +var target0 = document.createElement('div');
|
| +root0.appendChild(target0);
|
| +
|
| +var host1 = document.getElementById('host1');
|
| +var root1 = host1.attachShadow({ mode: 'open' });
|
| +var target1 = document.createElement('div');
|
| +root1.appendChild(target1);
|
| +
|
| +async_test(function(t) {
|
| + var touch0 = new Touch({
|
| + identifier: 0,
|
| + target: target0,
|
| + });
|
| + var touch1 = new Touch({
|
| + identifier: 1,
|
| + target: target1,
|
| + });
|
| +
|
| + var touchEvent = new TouchEvent("touchstart", {
|
| + touches: [touch0, touch1],
|
| + targetTouches: [touch1],
|
| + changedTouches: [touch1],
|
| + });
|
| +
|
| + target0.addEventListener('touchstart', t.step_func_done(function(e) {
|
| + assert_equals(e.touches.length, 2);
|
| + assert_equals(e.touches[0].target, target0);
|
| + assert_equals(e.touches[1].target, host1);
|
| +
|
| + assert_equals(e.targetTouches.length, 1);
|
| + assert_equals(e.targetTouches[0].target, host1);
|
| +
|
| + assert_equals(e.changedTouches.length, 1);
|
| + assert_equals(e.changedTouches[0].target, host1);
|
| + }));
|
| +
|
| + target0.dispatchEvent(touchEvent, { composed: true });
|
| +}, "TouchEvent's touches, targetTouches, and changedTouches should be retargeted.");
|
| +</script>
|
| +</body>
|
| +</html>
|
|
|