Chromium Code Reviews| Index: third_party/WebKit/LayoutTests/fast/events/constructors/create-touch-touchlist.html |
| diff --git a/third_party/WebKit/LayoutTests/fast/events/constructors/create-touch-touchlist.html b/third_party/WebKit/LayoutTests/fast/events/constructors/create-touch-touchlist.html |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..40c152accd235847e482251b3b9ad5613c214478 |
| --- /dev/null |
| +++ b/third_party/WebKit/LayoutTests/fast/events/constructors/create-touch-touchlist.html |
| @@ -0,0 +1,101 @@ |
| +<!-- |
| + TODO(chongz): Remove this file and import from w3c tests after approved. |
|
dtapuska
2015/11/04 21:36:31
Pls reference the crbug
|
| + https://github.com/w3c/touch-events/issues/45 |
| +--> |
| +<!DOCTYPE HTML> |
| +<html> |
| +<!-- |
| + Test cases for Touch Events v1 Recommendation |
| + http://www.w3.org/TR/touch-events/ |
| + |
| + These tests are based on Mozilla-Nokia-Google's single-touch tests. |
| + |
| + The primary purpose of the tests in this document is checking that the createTouch and |
| + createTouchList interfaces of the Touch Events APIs are correctly implemented. |
| + Other interactions are covered in other test files. |
| + |
| + This document references Test Assertions (abbrev TA below) written by Cathy Chan |
| + http://www.w3.org/2010/webevents/wiki/TestAssertions |
| +--> |
| + |
| +<head> |
| +<title>Touch Events createTouch and createTouchList Interface Tests</title> |
| +<meta name="viewport" content="width=device-width"> |
| +<script src="../../../resources/testharness.js"></script> |
| +<script src="../../../resources/testharnessreport.js"></script> |
| +<script src="touch-support.js"></script> |
| +<script> |
| + setup({explicit_done: true}); |
| + |
| + function check_touch_clientXY(touch) { |
| + assert_equals(touch.clientX, touch.pageX - window.pageXOffset, "touch.clientX is touch.pageX - window.pageXOffset."); |
| + assert_equals(touch.clientY, touch.pageY - window.pageYOffset, "touch.clientY is touch.pageY - window.pageYOffset."); |
| + } |
| + |
| + function run() { |
| + var target0 = document.getElementById("target0"); |
| + var touch1, touch2; |
| + |
| + test(function() { |
| + touch1 = document.createTouch(window, target0, 42, 15, 20, 35, 40); |
| + assert_equals(touch1.target, target0, "touch.target is target0"); |
| + assert_equals(touch1.identifier, 42, "touch.identifier is requested value"); |
| + assert_equals(touch1.pageX, 15, "touch.pageX is requested value"); |
| + assert_equals(touch1.pageY, 20, "touch.pageY is requested value"); |
| + check_touch_clientXY(touch1); |
| + assert_equals(touch1.screenX, 35, "touch.screenX is requested value"); |
| + assert_equals(touch1.screenY, 40, "touch.screenY is requested value"); |
| + }, "document.createTouch exists and creates a Touch object with requested properties"); |
| + |
| + touch2 = document.createTouch(window, target0, 44, 25, 30, 45, 50); |
| + |
| + var touchList; |
| + |
| + test(function() { |
| + touchList = document.createTouchList(); |
| + assert_equals(touchList.length, 0, "touchList.length is 0"); |
| + }, "document.createTouchList exists and correctly creates a TouchList from zero Touch objects"); |
| + |
| + if (touchList) |
| + check_TouchList_object(touchList); |
| + |
| + test(function() { |
| + touchList = document.createTouchList(touch1); |
| + assert_equals(touchList.length, 1, "touchList.length is 1"); |
| + assert_equals(touchList.item(0), touch1, "touchList.item(0) is input touch1"); |
| + }, "document.createTouchList exists and correctly creates a TouchList from a single Touch"); |
| + |
| + if (touchList) |
| + check_TouchList_object(touchList); |
| + |
| + test(function() { |
| + touchList = document.createTouchList(touch1, touch2); |
| + assert_equals(touchList.length, 2, "touchList.length is 2"); |
| + assert_equals(touchList.item(0), touch1, "touchList.item(0) is input touch1"); |
| + assert_equals(touchList.item(1), touch2, "touchList.item(1) is input touch2"); |
| + }, "document.createTouchList exists and correctly creates a TouchList from two Touch objects"); |
| + |
| + if (touchList) |
| + check_TouchList_object(touchList); |
| + |
| + target0.innerHTML = "Test complete." |
| + done(); |
| + } |
| +</script> |
| +<style> |
| + div { |
| + margin: 0em; |
| + padding: 2em; |
| + } |
| + #target0 { |
| + background: yellow; |
| + border: 1px solid orange; |
| + } |
| +</style> |
| +</head> |
| +<body onload="run()"> |
| + <h1>Touch Events: createTouch and createTouchList tests</h1> |
| + <div id="target0">Please wait for test to complete...</div> |
| + <div id="log"></div> |
| +</body> |
| +</html> |