Update web-platform-tests to revision 9d009fc59a8f99e0117b841b7f49094cc690964c

This commit is contained in:
WPT Sync Bot 2018-06-09 21:08:43 -04:00
parent 42701e5588
commit 75857a918c
33 changed files with 645 additions and 127 deletions

View file

@ -165811,6 +165811,18 @@
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-006.html": [
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-006.html",
[
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-006-ref.html",
"=="
]
],
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-containing-block-absolute-001.html": [
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-containing-block-absolute-001.html",
@ -172783,6 +172795,54 @@
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-circle.html": [
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-circle.html",
[
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-ref.html",
"=="
]
],
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-image.html": [
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-image.html",
[
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-ref.html",
"=="
]
],
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-inset.html": [
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-inset.html",
[
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-ref.html",
"=="
]
],
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-polygon.html": [
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-polygon.html",
[
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-ref.html",
"=="
]
],
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-border-box-001.html": [
[
"/css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-border-box-001.html",
@ -267613,6 +267673,11 @@
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-006-ref.html": [
[
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-containing-block-absolute-001-ref.html": [
[
{}
@ -269648,6 +269713,11 @@
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-ref.html": [
[
{}
]
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/reftest.list": [
[
{}
@ -288193,6 +288263,11 @@
{}
]
],
"interfaces/webdriver.idl": [
[
{}
]
],
"interfaces/webidl.idl": [
[
{}
@ -288293,6 +288368,11 @@
{}
]
],
"keyboard-map/resources/iframe-keyboard-map-helper.html": [
[
{}
]
],
"lifecycle/resources/foo.txt": [
[
{}
@ -350681,9 +350761,39 @@
{}
]
],
"keyboard-map/keyboard-map-https.html": [
"keyboard-map/keyboard-map-two-parallel-requests.https.html": [
[
"/keyboard-map/keyboard-map-https.html",
"/keyboard-map/keyboard-map-two-parallel-requests.https.html",
{}
]
],
"keyboard-map/navigator-keyboard-map-blocked-from-cross-origin-iframe.https.html": [
[
"/keyboard-map/navigator-keyboard-map-blocked-from-cross-origin-iframe.https.html",
{}
]
],
"keyboard-map/navigator-keyboard-map-blocked-from-iframe.https.html": [
[
"/keyboard-map/navigator-keyboard-map-blocked-from-iframe.https.html",
{}
]
],
"keyboard-map/navigator-keyboard-map-two-parallel-requests.https.html": [
[
"/keyboard-map/navigator-keyboard-map-two-parallel-requests.https.html",
{}
]
],
"keyboard-map/navigator-keyboard-map-two-sequential-requests.https.html": [
[
"/keyboard-map/navigator-keyboard-map-two-sequential-requests.https.html",
{}
]
],
"keyboard-map/navigator-keyboard-map.https.html": [
[
"/keyboard-map/navigator-keyboard-map.https.html",
{}
]
],
@ -350957,9 +351067,13 @@
{}
]
],
"media-capabilities/idlharness.html": [
"media-capabilities/idlharness.any.js": [
[
"/media-capabilities/idlharness.html",
"/media-capabilities/idlharness.any.html",
{}
],
[
"/media-capabilities/idlharness.any.worker.html",
{}
]
],
@ -416337,7 +416451,7 @@
"support"
],
"common/object-association.js": [
"c6955b7bbf00d73ec5959678391aa59d36da8321",
"759706842deec7ed3b59c66fab89209bd93cc561",
"support"
],
"common/object-association.js.headers": [
@ -552993,15 +553107,15 @@
"support"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-001.html": [
"2b106c772e9005287270f741a0ca8786e18d33c0",
"3688553c5cfd25d76feee6021794cc7273fe6cff",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-002-ref.html": [
"2d4ada43bfe8c6863f56e1e0d2599d9151c6b4c6",
"185fa9ad94e9045ca490303e7256fd6ffb2cda03",
"support"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-002.html": [
"c5538062ce33e225a09c01a48714187d206c6114",
"449b89844cf89f6ba2e3d27620255dab114a0755",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-003-ref.html": [
@ -553024,6 +553138,14 @@
"5ab4438dae36c8fa2af8ee2bba12bb60be3837ac",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-006-ref.html": [
"a54e26fbb340e92d8049ae84191f7a59149e8bc2",
"support"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-clip-006.html": [
"64b9266835318fb192c4d82319f98f64a8a1c03a",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/contain-paint-containing-block-absolute-001-ref.html": [
"15047fbe1c488711c1d6c309242eb2d5838f8c7e",
"support"
@ -553069,7 +553191,7 @@
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/contain/reftest.list": [
"361cc42bb96b840d65cdda9593a543388173c4a8",
"f13efa449db3e07a7fcec53072121e9d906f8562",
"support"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/counter-styles-3/dependent-builtin-ref.html": [
@ -557176,8 +557298,28 @@
"76c907a127aec740e17d009a517acccd5d3e9fd4",
"support"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-circle.html": [
"64690b09c57ca1ef452e951b0f30f0815a36b87c",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-image.html": [
"c3f18f590da1061b2f6ac91fddd380d9c5faad84",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-inset.html": [
"d9bc1367e6f301b950703d58fae47193465350c5",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-polygon.html": [
"740aa634c9078e93554d81fa08d7ae17347dedfd",
"reftest"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/float-retry-push-ref.html": [
"e4736754b5c44b272e94a2988dce8feb2e5478f2",
"support"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/reftest.list": [
"dcb7840f1dd2ccd57087826c2e11b960589ff729",
"93dca478ad98d04ac4d0c15188afcff9f7072a3c",
"support"
],
"css/vendor-imports/mozilla/mozilla-central-reftests/shapes1/shape-outside-border-box-001-ref.html": [
@ -588472,6 +588614,10 @@
"1ae8b428644479b352fd5b1996677fd4dcdbb84b",
"support"
],
"interfaces/webdriver.idl": [
"6f6ce7d142a9b548988c9ab2a7a13f0f1793cf6a",
"support"
],
"interfaces/webidl.idl": [
"d466ddd18ed621e15cc416863502069ffccfa5b9",
"support"
@ -588697,7 +588843,7 @@
"support"
],
"keyboard-lock/idlharness.https.html": [
"010771094a9dc58e03a2c1ca2d8416866284fc2b",
"d196b06e8606572e1e6c1a9e81e2f0920641c069",
"testharness"
],
"keyboard-lock/navigator-keyboard-lock-blocked-from-cross-origin-iframe.https.html": [
@ -588717,7 +588863,7 @@
"testharness"
],
"keyboard-lock/navigator-keyboard-lock.https.html": [
"6162fc3da9b7b104453e24b5da10d816a1a9425e",
"7fd35e9ffffeaa36a7fca0e57869cbc93e780e48",
"testharness"
],
"keyboard-lock/navigator-keyboard-unlock.https.html": [
@ -588736,10 +588882,34 @@
"3215b6729d83ca2841baf6eb33445eb07e0a7c25",
"testharness"
],
"keyboard-map/keyboard-map-https.html": [
"28b559875ce9514702d181cb4cb5e0a207083e2d",
"keyboard-map/keyboard-map-two-parallel-requests.https.html": [
"44ead37a7118fb121dea19d9e381f647dbe6d6df",
"testharness"
],
"keyboard-map/navigator-keyboard-map-blocked-from-cross-origin-iframe.https.html": [
"f49b379f64d6c83ad6ee8a8b9fcb34932a96ea08",
"testharness"
],
"keyboard-map/navigator-keyboard-map-blocked-from-iframe.https.html": [
"df67fcd5adc8bc1c77a2b3abe2f7dd4c1b000958",
"testharness"
],
"keyboard-map/navigator-keyboard-map-two-parallel-requests.https.html": [
"44ead37a7118fb121dea19d9e381f647dbe6d6df",
"testharness"
],
"keyboard-map/navigator-keyboard-map-two-sequential-requests.https.html": [
"2d1166c6b09274bdce552a931d947a3fd1582ecc",
"testharness"
],
"keyboard-map/navigator-keyboard-map.https.html": [
"a94a3c2ccc5c5a7f8ca96ba2035a4d7dd2a3b03e",
"testharness"
],
"keyboard-map/resources/iframe-keyboard-map-helper.html": [
"545a86cb977d49303debac90d00339f1348f7f76",
"support"
],
"lifecycle/freeze.html": [
"79f45af08ff1cfe5c29d318fe6a32d281e990960",
"testharness"
@ -589340,8 +589510,8 @@
"3cafa5d2375c8f42abee8f22293705eaa6dca019",
"testharness"
],
"media-capabilities/idlharness.html": [
"47b8077cfff98cf07d5794ab32974ed4bc8d8a01",
"media-capabilities/idlharness.any.js": [
"23dff2a720b31aa5066a96a373ecc25e649719e7",
"testharness"
],
"media-source/OWNERS": [
@ -590073,7 +590243,7 @@
"support"
],
"mediasession/idlharness.html": [
"96a3bd3eb15a373ca1c68d528ff6514b3d7cddc1",
"e5b4267255f62b4505b3c656d2b377380f8dfab5",
"testharness"
],
"mediasession/mediametadata.html": [
@ -619901,7 +620071,7 @@
"wdspec"
],
"webdriver/tests/interface.html": [
"f7b2c45ff8b1b5790dd390fbe2ab997766f5d9a8",
"0b88587deabc7a4577da90bdf6d874e596b9a240",
"testharness"
],
"webdriver/tests/is_element_selected/__init__.py": [

View file

@ -38,6 +38,3 @@
[Test @font-face matching for weight 249]
expected: FAIL
[Test @font-face matching for weight 420]
expected: FAIL

View file

@ -1,4 +1,5 @@
[javascript-url-abort-return-value-undefined.tentative.html]
expected: TIMEOUT
[Not aborting fetch for javascript:undefined navigation]
expected: FAIL
expected: TIMEOUT

View file

@ -1,4 +1,4 @@
[shader-uniform-packing-restrictions.html]
[context-creation-and-destruction.html]
expected: TIMEOUT
[Overall test]
expected: NOTRUN

View file

@ -1,4 +1,4 @@
[shader-with-non-reserved-words.html]
[context-creation.html]
expected: TIMEOUT
[Overall test]
expected: NOTRUN

View file

@ -0,0 +1,2 @@
[context-eviction-with-garbage-collection.html]
expected: TIMEOUT

View file

@ -14,7 +14,7 @@ window.testIsPerWindow = propertyName => {
iframe.remove();
const after = frame[propertyName];
assert_equals(after, before);
assert_equals(after, before, `window.${propertyName} should not change after iframe.remove()`);
}, `Discarding the browsing context must not change window.${propertyName}`);
async_test(t => {
@ -56,6 +56,8 @@ window.testIsPerWindow = propertyName => {
const after = frame[propertyName];
assert_not_equals(after, before);
frame.document.close();
});
iframe.src = "/common/blank.html";

View file

@ -14,7 +14,7 @@
contain: paint;
width: 100px;
height: 100px;
background: green;
background: blue;
margin: 25px;
padding: 25px;
}

View file

@ -3,6 +3,7 @@
<head>
<meta charset="utf-8">
<title>CSS Reftest Reference</title>
<link rel="author" title="Yusuf Sermet" href="mailto:ysermet@mozilla.com">
<link rel="author" title="Kyle Zentner" href="mailto:zentner.kyle@gmail.com">
<style>
body {
@ -14,7 +15,8 @@
height: 100px;
background: green;
margin: 25px;
padding: 25px;
padding: 10px;
border-radius: 4em;
}
</style>
</head>

View file

@ -2,7 +2,8 @@
<html>
<head>
<meta charset="utf-8">
<title>CSS Test: 'contain: paint' with overflowing text contents.</title>
<title>CSS Test: 'contain: paint' with overflowing text contents inside a rounded rectangle box.</title>
<link rel="author" title="Yusuf Sermet" href="mailto:ysermet@mozilla.com">
<link rel="author" title="Kyle Zentner" href="mailto:zentner.kyle@gmail.com">
<link rel="help" href="http://www.w3.org/TR/css-containment-1/#containment-paint">
<link rel="match" href="contain-paint-clip-002-ref.html">
@ -16,7 +17,8 @@
height: 100px;
background: green;
margin: 25px;
padding: 25px;
padding: 10px;
border-radius: 4em;
}
</style>
</head>

View file

@ -0,0 +1,35 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>CSS Reftest Reference</title>
<link rel="author" title="Yusuf Sermet" href="mailto:ysermet@mozilla.com">
<link rel="author" title="Kyle Zentner" href="mailto:zentner.kyle@gmail.com">
<style>
body {
margin: 0;
}
.root {
width: 100px;
height: 100px;
background: green;
margin: 25px;
padding: 25px;
overflow: hidden;
overflow-clip-box: content-box;
}
</style>
</head>
<body>
<div class="root">
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA This text should
be clipped to the content box. Lorem ipsum dolor sit amet, consectetur adipiscing
elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed
nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum.
Praesent mauris. Fusce nec tellus sed augue semper porta. Mauris massa.
Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu ad litora
torquent per conubia nostra, per inceptos himenaeos. Curabitur sodales
ligula in libero.
</div>
</body>
</html>

View file

@ -0,0 +1,37 @@
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>CSS Test: 'contain: paint' with overflowing text contents while "overflow-clip-box: content-box" enabled.</title>
<link rel="author" title="Yusuf Sermet" href="mailto:ysermet@mozilla.com">
<link rel="author" title="Kyle Zentner" href="mailto:zentner.kyle@gmail.com">
<link rel="help" href="http://www.w3.org/TR/css-containment-1/#containment-paint">
<link rel="match" href="contain-paint-clip-006-ref.html">
<style>
body {
margin: 0;
}
.root {
contain: paint;
width: 100px;
height: 100px;
background: green;
margin: 25px;
padding: 25px;
overflow-clip-box: content-box;
}
</style>
</head>
<body>
<div class="root">
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA This text should
be clipped to the content box. Lorem ipsum dolor sit amet, consectetur adipiscing
elit. Integer nec odio. Praesent libero. Sed cursus ante dapibus diam. Sed
nisi. Nulla quis sem at nibh elementum imperdiet. Duis sagittis ipsum.
Praesent mauris. Fusce nec tellus sed augue semper porta. Mauris massa.
Vestibulum lacinia arcu eget nulla. Class aptent taciti sociosqu ad litora
torquent per conubia nostra, per inceptos himenaeos. Curabitur sodales
ligula in libero.
</div>
</body>
</html>

View file

@ -4,6 +4,7 @@
== contain-paint-clip-003.html contain-paint-clip-003-ref.html
== contain-paint-clip-004.html contain-paint-clip-004-ref.html
== contain-paint-clip-005.html contain-paint-clip-003-ref.html
== contain-paint-clip-006.html contain-paint-clip-006-ref.html
== contain-paint-containing-block-absolute-001.html contain-paint-containing-block-absolute-001-ref.html
== contain-paint-containing-block-fixed-001.html contain-paint-containing-block-fixed-001-ref.html
== contain-paint-formatting-context-float-001.html contain-paint-formatting-context-float-001-ref.html

View file

@ -0,0 +1,35 @@
<!DOCTYPE HTML>
<meta charset="utf-8">
<title>Retry inline floats until they fit -- circle</title>
<link rel="author" title="Brad Werth" href="mailto:bwerth@mozilla.com">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-shapes-1/">
<link rel="match" href="float-retry-push-ref.html">
<meta name="flags" content="">
<meta name="assert" content="Test that a too-wide inline block is pushed in the block direction along a shape-outside circle until it fits.">
<style>
body {
margin: 0px;
line-height: 1;
}
#too-wide {
display: inline-block;
height: 20px;
width: 250px;
background: blue;
}
#shape {
width: 100px;
height: 100px;
float: left;
shape-outside: circle(70.710678px at 0px 0px);
/* 70.710678 = 50 / (sqrt(2) / 2) */
}
</style>
<div style="width: 300px; height: 100px;">
<div id="shape"></div>
<span id="too-wide"></span>
<div>

View file

@ -0,0 +1,34 @@
<!DOCTYPE HTML>
<meta charset="utf-8">
<title>Retry inline floats until they fit -- image</title>
<link rel="author" title="Brad Werth" href="mailto:bwerth@mozilla.com">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-shapes-1/">
<link rel="match" href="float-retry-push-ref.html">
<meta name="flags" content="">
<meta name="assert" content="Test that a too-wide inline block is pushed in the block direction along a shape-outside image until it fits.">
<style>
body {
margin: 0px;
line-height: 1;
}
#too-wide {
display: inline-block;
height: 20px;
width: 250px;
background: blue;
}
#shape {
width: 100px;
height: 100px;
float: left;
shape-outside: linear-gradient(135deg, black, black 50%, transparent 50%);
}
</style>
<div style="width: 300px; height: 100px;">
<div id="shape"></div>
<span id="too-wide"></span>
<div>

View file

@ -0,0 +1,35 @@
<!DOCTYPE HTML>
<meta charset="utf-8">
<title>Retry inline floats until they fit -- inset</title>
<link rel="author" title="Brad Werth" href="mailto:bwerth@mozilla.com">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-shapes-1/">
<link rel="match" href="float-retry-push-ref.html">
<meta name="flags" content="">
<meta name="assert" content="Test that a too-wide inline block is pushed in the block direction along a shape-outside inset until it fits.">
<style>
body {
margin: 0px;
line-height: 1;
}
#too-wide {
display: inline-block;
height: 20px;
width: 250px;
background: blue;
}
#shape {
width: 100px;
height: 100px;
float: left;
shape-outside: inset(0px 40px 40px 0px round 0 0 34.142136px 0);
/* 34.142136 = 10 / (1 - (sqrt(2) / 2)) */
}
</style>
<div style="width: 300px; height: 100px;">
<div id="shape"></div>
<span id="too-wide"></span>
<div>

View file

@ -0,0 +1,34 @@
<!DOCTYPE HTML>
<meta charset="utf-8">
<title>Retry inline floats until they fit -- polygon</title>
<link rel="author" title="Brad Werth" href="mailto:bwerth@mozilla.com">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-shapes-1/">
<link rel="match" href="float-retry-push-ref.html">
<meta name="flags" content="">
<meta name="assert" content="Test that a too-wide inline block is pushed in the block direction along a shape-outside polygon until it fits.">
<style>
body {
margin: 0px;
line-height: 1;
}
#too-wide {
display: inline-block;
height: 20px;
width: 250px;
background: blue;
}
#shape {
width: 100px;
height: 100px;
float: left;
shape-outside: polygon(0px 0px, 100px 0px, 0px 100px);
}
</style>
<div style="width: 300px; height: 100px;">
<div id="shape"></div>
<span id="too-wide"></span>
<div>

View file

@ -0,0 +1,22 @@
<!DOCTYPE HTML>
<meta charset="utf-8">
<title>Test for retrying floats and pushing them partway down the float area</title>
<link rel="author" title="Brad Werth" href="mailto:bwerth@mozilla.com">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<style>
body {
margin: 0px;
line-height: 1;
}
#too-wide {
display: inline-block;
height: 20px;
width: 250px;
background: blue;
}
</style>
<div style="width: 300px; height: 100px">
<span id="too-wide" style="margin-top: 50px; margin-left: 50px;"></span>
</div>

View file

@ -103,3 +103,9 @@
== shape-outside-polygon-024.html shape-outside-polygon-024-ref.html
== shape-outside-polygon-025.html shape-outside-polygon-025-ref.html
== shape-outside-polygon-032.html shape-outside-polygon-032-ref.html
# Tests of shape-outside layout behavior with too-wide inline elements
== float-retry-push-circle.html float-retry-push-ref.html
== float-retry-push-image.html float-retry-push-ref.html
== float-retry-push-inset.html float-retry-push-ref.html
== float-retry-push-polygon.html float-retry-push-ref.html

View file

@ -0,0 +1,9 @@
// GENERATED CONTENT - DO NOT EDIT
// Content of this file was automatically extracted from the
// "WebDriver" spec.
// See: https://w3c.github.io/webdriver/webdriver-spec.html
Navigator includes NavigatorAutomationInformation;
interface mixin NavigatorAutomationInformation {
readonly attribute boolean webdriver;
};

View file

@ -1,7 +1,7 @@
<!doctype html>
<html>
<head>
<title>Keyboard IDL tests</title>
<title>Keyboard Lock IDL tests</title>
<link rel="help" href="https://w3c.github.io/keyboard-lock/"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>

View file

@ -4,6 +4,22 @@
<script>
'use strict';
test(function() {
assert_true(navigator.keyboard instanceof Keyboard);
}, "navigator.keyboard instanceof Keyboard");
test(function() {
assert_equals(navigator.keyboard, navigator.keyboard);
}, "navigator.keyboard SameObject");
test(function() {
assert_true(navigator.keyboard.lock instanceof Function);
}, "navigator.keyboard.lock instanceof Function");
test(function() {
assert_true(navigator.keyboard.unlock instanceof Function);
}, "navigator.keyboard.unlock instanceof Function");
promise_test(() => {
const p = navigator.keyboard.lock(["KeyA", "KeyB"]);
assert_true(p instanceof Promise);

View file

@ -0,0 +1,15 @@
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
'use strict';
promise_test((t) => {
const p1 = navigator.keyboard.getLayoutMap();
const p2 = navigator.keyboard.getLayoutMap();
// p1 and p2 should be the same promise instance.
assert_equals(p1, p2);
return Promise.all([p1, p2]);
}, '[Keyboard Map] getLayoutMap() twice in parallel');
</script>

View file

@ -0,0 +1,29 @@
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/cors/support.js?pipe=sub"></script>
<body>
<script>
'use strict';
promise_test(() => {
let iframe = document.createElement('iframe');
iframe.src = CROSSDOMAIN + 'resources/iframe-keyboard-map-helper.html';
iframe.onload = () => {
iframe.contentWindow.postMessage('Ready', '*');
}
document.body.appendChild(iframe);
return new Promise((resolve,reject) => {
window.onmessage = message => {
if (message.data == 'Success') {
resolve();
} else if (message.data == 'Failure') {
reject();
}
}
});
}, '[Keyboard Map] getLayoutMap() blocked from within cross-origin iframe');
</script>

View file

@ -0,0 +1,28 @@
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<body>
<script>
'use strict';
promise_test(() => {
let iframe = document.createElement('iframe');
iframe.src = 'resources/iframe-keyboard-map-helper.html';
iframe.onload = () => {
iframe.contentWindow.postMessage('Ready', '*');
}
document.body.appendChild(iframe);
return new Promise((resolve,reject) => {
window.onmessage = message => {
if (message.data == 'Success') {
resolve();
} else if (message.data == 'Failure') {
reject();
}
}
});
}, '[Keyboard Map] getLayoutMap() blocked from within iframe');
</script>

View file

@ -0,0 +1,15 @@
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
'use strict';
promise_test((t) => {
const p1 = navigator.keyboard.getLayoutMap();
const p2 = navigator.keyboard.getLayoutMap();
// p1 and p2 should be the same promise instance.
assert_equals(p1, p2);
return Promise.all([p1, p2]);
}, '[Keyboard Map] getLayoutMap() twice in parallel');
</script>

View file

@ -0,0 +1,14 @@
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
'use strict';
promise_test(() => {
return navigator.keyboard.getLayoutMap()
.then(() => {
return navigator.keyboard.getLayoutMap();
});
}, '[Keyboard Map] getLayoutMap() called twice sequentially');
</script>

View file

@ -13,7 +13,11 @@ test(function() {
assert_equals(navigator.keyboard, navigator.keyboard);
}, "navigator.keyboard SameObject");
promise_test(function() {
test(function() {
assert_true(navigator.keyboard.getLayoutMap instanceof Function);
}, "navigator.keyboard.getLayoutMap instanceof Function");
promise_test(() => {
const p = navigator.keyboard.getLayoutMap();
assert_true(p instanceof Promise);
return p.then(function(map) {

View file

@ -0,0 +1,20 @@
<!DOCTYPE html>
<script>
'use strict';
window.onmessage = message => {
if (message.data === 'Ready') {
let onSuccess = () => { parent.postMessage('Failure', '*'); };
let onError = error => {
if (error.name == 'InvalidStateError') {
parent.postMessage('Success', '*');
} else {
parent.postMessage('Failure', '*');
}
};
navigator.keyboard.getLayoutMap().then(onSuccess, onError);
}
};
</script>

View file

@ -0,0 +1,23 @@
// META: script=/resources/WebIDLParser.js
// META: script=/resources/idlharness.js
// https://wicg.github.io/media-capabilities/
'use strict';
promise_test(async () => {
const idl = await fetch('/interfaces/media-capabilities.idl').then(r => r.text());
const html = await fetch('/interfaces/html.idl').then(r => r.text());
const cssomView = await fetch('/interfaces/cssom-view.idl').then(r => r.text());
var idl_array = new IdlArray();
idl_array.add_idls(idl);
idl_array.add_dependency_idls(html);
idl_array.add_dependency_idls(cssomView);
idl_array.add_objects({
Navigator: ['navigator']
});
idl_array.test();
}, 'Test IDL implementation of Media Capabilities');

View file

@ -1,37 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Media Capabilities IDL tests</title>
<link rel="help" href="https://wicg.github.io/media-capabilities/"/>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/WebIDLParser.js"></script>
<script src="/resources/idlharness.js"></script>
</head>
<body>
<h1>Media Session IDL tests</h1>
<script>
"use strict";
function doTest([media_capabilities]) {
var idl_array = new IdlArray();
idl_array.add_untested_idls('interface Navigator {};');
idl_array.add_untested_idls('interface WorkerNavigator {};');
idl_array.add_untested_idls('interface Screen {};');
idl_array.add_idls(media_capabilities);
idl_array.add_objects({
Navigator: ["navigator"]
});
idl_array.test();
}
function fetchText(url) {
return fetch(url).then((response) => response.text());
}
promise_test(() => {
return Promise.all(["/interfaces/media-capabilities.idl"].map(fetchText))
.then(doTest);
}, "Test IDL implementation of Media Capabilities");
</script>
<div id="log"></div>
</body>
</html>

View file

@ -12,27 +12,20 @@
<body>
<h1>Media Session IDL tests</h1>
<script>
"use strict";
'use strict';
function doTest([mediasession]) {
var idl_array = new IdlArray();
idl_array.add_untested_idls('interface Navigator {};');
idl_array.add_idls(mediasession);
idl_array.add_objects({
MediaMetadata: ["new MediaMetadata()"],
Navigator: ["navigator"]
});
idl_array.test();
}
function fetchText(url) {
return fetch(url).then((response) => response.text());
}
promise_test(() => {
return Promise.all(["/interfaces/mediasession.idl"].map(fetchText))
.then(doTest);
}, "Test IDL implementation of Media Session");
promise_test(async () => {
var idl_array = new IdlArray();
const idl = await fetch('/interfaces/mediasession.idl').then(r => r.text());
const html = await fetch('/interfaces/html.idl').then(r => r.text());
idl_array.add_idls(idl);
idl_array.add_dependency_idls(html);
idl_array.add_objects({
MediaMetadata: ['new MediaMetadata()'],
Navigator: ['navigator']
});
idl_array.test();
}, 'Test IDL implementation of Media Session');
</script>
<div id="log"></div>
</body>

View file

@ -1,49 +1,23 @@
<!doctype html>
<meta charset=utf-8>
<link rel="help" href="https://w3c.github.io/webdriver/">
<script src=/resources/testharness.js></script>
<script src=/resources/testharnessreport.js></script>
<script src=/resources/WebIDLParser.js></script>
<script src=/resources/idlharness.js></script>
<script type=text/plain class=untested>
[Exposed=Window]
interface Navigator {
// objects implementing this interface also implement the interfaces given below
};
</script>
<script type=text/plain>
Navigator includes NavigatorAutomationInformation;
interface mixin NavigatorAutomationInformation {
readonly attribute boolean webdriver;
};
</script>
<script>
"use strict";
"use strict";
test(() => assert_idl_attribute(navigator, "webdriver"), "navigator.webdriver is present");
// When test is run in automation navigator.webdriver is likely to
// be true because WebDriver controls the browser instance. To that
// extent, this test is a bit special. It should also be possible to
// run the test manually, when WebDriver is not active, and so either
// true/false outcome is OK.
if (navigator.webdriver) {
test(() => assert_true(navigator.webdriver), "navigator.webdriver is true when webdriver-active is set");
} else {
test(() => assert_false(navigator.webdriver), "navigator.webdriver is false when webdriver-active is not set");
}
var idls = new IdlArray();
for (let node of [...document.scripts].filter(({type}) => type == "text/plain")) {
if (node.className == "untested") {
idls.add_untested_idls(node.textContent);
} else {
idls.add_idls(node.textContent);
}
};
idls.test();
promise_test(async () => {
const idl_array = new IdlArray();
const idl = await fetch("/interfaces/webdriver.idl").then(r => r.text());
const html = await fetch("/interfaces/html.idl").then(r => r.text());
idl_array.add_idls(idl);
idl_array.add_dependency_idls(html);
idl_array.add_objects({
Navigator: ["navigator"]
});
idl_array.test();
}, "Test IDL implementation of webdriver API");
</script>