Update web-platform-tests to revision e15b5ebba7465e09bcda2962f6758cddcdcfa248

This commit is contained in:
WPT Sync Bot 2018-10-09 21:32:32 -04:00
parent 68e55ead42
commit 3eaee747ed
214 changed files with 4692 additions and 245 deletions

View file

@ -0,0 +1,43 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>TestDriver actions: element position</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<style>
div#test {
position: fixed;
left: -100px;
top: -25px;
width: 200px;
height: 75px;
background-color:blue;
}
</style>
<div id="test">
</div>
<script>
let events = [];
async_test(t => {
let test = document.getElementById("test");
test.addEventListener("click", e => {
events.push(e.clientX);
events.push(e.clientY)
});
let div = document.getElementById("test");
let actions = new test_driver.Actions()
.pointerMove(0, 0, {origin: test})
.pointerDown()
.pointerUp()
.send()
.then(t.step_func_done(() => assert_array_equals(events, [50, 25])))
.catch(e => t.step_func(() => assert_unreached("Actions sequence failed " + e)));
});
</script>

View file

@ -0,0 +1,56 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>TestDriver actions: element timing</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<style>
div#test1, div#test2 {
position: fixed;
top: 0;
left: 0;
width: 100px;
height: 100px;
background-color: blue;
}
div#test2 {
display: none;
left: -100px;
background-color: green;
}
</style>
<div id="test1">
</div>
<div id="test2">
</div>
<script>
let events = [];
async_test(t => {
let test1 = document.getElementById("test1");
let test2 = document.getElementById("test2");
document.getElementById("test1").addEventListener("click",
() => {test2.style.display = "block"; test2.style.top = "100px"; test2.style.left = "0"});
document.getElementById("test2").addEventListener("click",
e => {events.push(e.clientX); events.push(e.clientY)});
let div = document.getElementById("backing");
let actions = new test_driver.Actions()
.pointerMove(0, 0, {origin: test1})
.pointerDown()
.pointerUp()
.pointerMove(0, 0, {origin: test2})
.pointerDown()
.pointerUp()
.send()
.then(t.step_func_done(() => assert_array_equals(events, [50, 150])))
.catch(e => t.step_func(() => assert_unreached("Actions sequence failed " + e)));
});
</script>

View file

@ -0,0 +1,37 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>TestDriver actions: event order</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<button id="a">Button a</button>
<button id="b">Button b</button>
<script>
// Pointer 1 is added before Pointer 2 so it comes first in the list of sources
// Therefore its actions happen first
let events = [];
async_test(t => {
Array.prototype.forEach.call(document.getElementsByTagName("button"),
(x) => x.addEventListener("mousedown", () => {events.push(x.id)}));
let button_a = document.getElementById("a");
let button_b = document.getElementById("b");
let actions = new test_driver.Actions()
.addPointer("pointer1")
.addPointer("pointer2")
.pointerMove(0, 0, {origin: button_a, sourceName: "pointer1"})
.pointerMove(0, 0, {origin: button_b, sourceName: "pointer2"})
.pointerDown({sourceName: "pointer2"})
.pointerDown({sourceName: "pointer1"})
.pointerUp({sourceName: "pointer2"})
.pointerUp({sourceName: "pointer1"})
.send()
.then(t.step_func_done(() => assert_array_equals(events, ["a", "b"])))
.catch(e => t.step_func(() => assert_unreached("Actions sequence failed " + e)));
});
</script>

View file

@ -0,0 +1,36 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>TestDriver actions: multiple devices</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-actions.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<input type="text" id="text"></input>
<script>
async_test(t => {
let text_box = document.getElementById("text");
let actions = new test_driver.Actions()
.pointerMove(0, 0, {origin: text_box})
.pointerDown()
.pointerUp()
.addTick()
.keyDown("p")
.keyUp("p")
.keyDown("a")
.keyUp("a")
.keyDown("s")
.keyUp("s")
.keyDown("s")
.keyUp("s");
actions.send()
.then(() => {
assert_true(text_box.value == "pass");
t.done();
})
.catch(t.unreached_func("Actions sequence failed"));
});
</script>