mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Update web-platform-tests to revision 341891a7294014cb21b0a85cd0e024997aa21555
This commit is contained in:
parent
84f13342f6
commit
4aba25d880
31 changed files with 370 additions and 82 deletions
|
@ -7,7 +7,7 @@
|
|||
expected: FAIL
|
||||
|
||||
[Opening a blob URL in a new window immediately before revoking it works.]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Opening a blob URL in a noopener about:blank window immediately before revoking it works.]
|
||||
expected: FAIL
|
||||
|
|
|
@ -264669,7 +264669,7 @@
|
|||
"docs/writing-tests/test-templates.md": [
|
||||
[]
|
||||
],
|
||||
"docs/writing-tests/testdriver-tutorial.md": [
|
||||
"docs/writing-tests/testdriver-extension-tutorial.md": [
|
||||
[]
|
||||
],
|
||||
"docs/writing-tests/testdriver.md": [
|
||||
|
@ -321772,9 +321772,15 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/css-masking/animations/clip-path-interpolation.html": [
|
||||
"css/css-masking/animations/clip-path-interpolation-001.html": [
|
||||
[
|
||||
"css/css-masking/animations/clip-path-interpolation.html",
|
||||
"css/css-masking/animations/clip-path-interpolation-001.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-masking/animations/clip-path-interpolation-002.html": [
|
||||
[
|
||||
"css/css-masking/animations/clip-path-interpolation-002.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
|
@ -579051,10 +579057,14 @@
|
|||
"322ebd724e8524e85d8afe369b6bafaabbec8c79",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-masking/animations/clip-path-interpolation.html": [
|
||||
"css/css-masking/animations/clip-path-interpolation-001.html": [
|
||||
"21c34f1f2b75ec7345a97b00db62a49b038cf026",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-masking/animations/clip-path-interpolation-002.html": [
|
||||
"e00170ed331bcbca450a4de5ef41c415cc88d2b9",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-masking/clip-path-svg-content/clip-path-clip-nested-twice.svg": [
|
||||
"269e8feed2d3c21774a7c94729c3551899ce4d92",
|
||||
"reftest"
|
||||
|
@ -631176,7 +631186,7 @@
|
|||
"support"
|
||||
],
|
||||
"docs/running-tests/from-local-system.md": [
|
||||
"0f337176c47d7c38bcaebd85fd86628e1870dfae",
|
||||
"bc8b50ffd104199c3489415119e1ef148723827a",
|
||||
"support"
|
||||
],
|
||||
"docs/running-tests/from-web.md": [
|
||||
|
@ -631236,7 +631246,7 @@
|
|||
"support"
|
||||
],
|
||||
"docs/writing-tests/index.md": [
|
||||
"0e0d3f35b00a20345d319914344bf779d4016aa8",
|
||||
"84735b5ba3644a7a9e30ae21591649e75c82208f",
|
||||
"support"
|
||||
],
|
||||
"docs/writing-tests/lint-tool.md": [
|
||||
|
@ -631283,12 +631293,12 @@
|
|||
"858758b4c8e022afe53d76184a65a44da8106a1b",
|
||||
"support"
|
||||
],
|
||||
"docs/writing-tests/testdriver-tutorial.md": [
|
||||
"275c813355c6cb8e6b5e2e6c1595f40bde28e7ec",
|
||||
"docs/writing-tests/testdriver-extension-tutorial.md": [
|
||||
"262e394353632ccc4aaa8b42955d09a0de61624f",
|
||||
"support"
|
||||
],
|
||||
"docs/writing-tests/testdriver.md": [
|
||||
"99176906130c3812c9876fe72707175e35d961e8",
|
||||
"6b398b993b61f835dc18b1a97019ab3d3d1377e0",
|
||||
"support"
|
||||
],
|
||||
"docs/writing-tests/testharness-api.md": [
|
||||
|
@ -631300,7 +631310,7 @@
|
|||
"support"
|
||||
],
|
||||
"docs/writing-tests/testharness.md": [
|
||||
"17ee097ce185d07ac7353a1541c5c30593b9c387",
|
||||
"acab70a1f1630cce6a270d8a966d166c90c23c22",
|
||||
"support"
|
||||
],
|
||||
"docs/writing-tests/tools.md": [
|
||||
|
@ -661992,7 +662002,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/html.idl": [
|
||||
"8347c5d4cdc9b00550efcec7f2a77993f2b7ccf6",
|
||||
"486875ec274f84ca5a6dae5c341b76119cc2e540",
|
||||
"support"
|
||||
],
|
||||
"interfaces/image-capture.idl": [
|
||||
|
|
|
@ -5,9 +5,9 @@
|
|||
[[data-expected-height\] 7]
|
||||
expected: FAIL
|
||||
|
||||
[[data-expected-height\] 3]
|
||||
[[data-expected-height\] 1]
|
||||
expected: FAIL
|
||||
|
||||
[[data-expected-height\] 4]
|
||||
[[data-expected-height\] 2]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -312,18 +312,21 @@
|
|||
[<iframe>: separate response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
[<iframe>: combined response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -56,6 +56,9 @@
|
|||
[separate text/javascript x/x]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript ]
|
||||
[separate text/javascript;charset=windows-1252 error text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -11,3 +11,9 @@
|
|||
[X-Content-Type-Options%3A%20nosniff%0C]
|
||||
expected: FAIL
|
||||
|
||||
[X-Content-Type-Options%3A%20'NosniFF']
|
||||
expected: FAIL
|
||||
|
||||
[X-Content-Type-Options%3A%20%22nosniFF%22]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
[traverse_the_history_1.html]
|
||||
[Multiple history traversals from the same task]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[traverse_the_history_5.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
[document_domain_access_details.sub.html]
|
||||
expected: TIMEOUT
|
||||
[Access allowed if same-origin with no 'document.domain' modification. (Sanity check)]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
[Access is revoked to Window object when we stop being same effective script origin due to document.domain.]
|
||||
expected: NOTRUN
|
||||
|
@ -13,7 +13,7 @@
|
|||
expected: NOTRUN
|
||||
|
||||
[Access not allowed if different-origin with no 'document.domain' modification. (Sanity check)]
|
||||
expected: NOTRUN
|
||||
expected: FAIL
|
||||
|
||||
[Access disallowed again if same-origin, both set document-domain to existing value, then one sets to parent.]
|
||||
expected: NOTRUN
|
||||
|
@ -22,13 +22,13 @@
|
|||
expected: NOTRUN
|
||||
|
||||
[Access allowed if same-origin and both set document.domain to existing value.]
|
||||
expected: NOTRUN
|
||||
expected: TIMEOUT
|
||||
|
||||
[Access is not revoked to Document object when we stop being same effective script origin due to document.domain.]
|
||||
expected: NOTRUN
|
||||
|
||||
[Access disallowed if same-origin but only one sets document.domain.]
|
||||
expected: NOTRUN
|
||||
expected: FAIL
|
||||
|
||||
[Access evolves correctly for cross-origin objects when we join up via document.domain and then diverge again.]
|
||||
expected: NOTRUN
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[embedded-opener-remove-frame.html]
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[opener and "removed" embedded documents]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -7,5 +7,5 @@
|
|||
expected: FAIL
|
||||
|
||||
[opener of discarded auxiliary browsing context]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1391,6 +1391,27 @@
|
|||
[SVGAElement includes HTMLHyperlinkElementUtils: member names are unique]
|
||||
expected: FAIL
|
||||
|
||||
[SubmitEvent interface object name]
|
||||
expected: FAIL
|
||||
|
||||
[SubmitEvent interface object length]
|
||||
expected: FAIL
|
||||
|
||||
[SubmitEvent interface: existence and properties of interface prototype object]
|
||||
expected: FAIL
|
||||
|
||||
[SubmitEvent interface: existence and properties of interface prototype object's @@unscopables property]
|
||||
expected: FAIL
|
||||
|
||||
[SubmitEvent interface: attribute submitter]
|
||||
expected: FAIL
|
||||
|
||||
[SubmitEvent interface: existence and properties of interface object]
|
||||
expected: FAIL
|
||||
|
||||
[SubmitEvent interface: existence and properties of interface prototype object's "constructor" property]
|
||||
expected: FAIL
|
||||
|
||||
|
||||
[idlharness.https.html?include=(Document|Window)]
|
||||
[Document interface: documentWithHandlers must inherit property "queryCommandEnabled(DOMString)" with the proper type]
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
[iframe_sandbox_popups_escaping-3.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
[button-submit-children.html]
|
||||
expected: TIMEOUT
|
||||
[This test will pass if a form navigation successfully occurs when clicking a child element of a <button type=submit> element with a onclick event handler which prevents the default form submission and manually calls form.submit() instead.]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
[toggleEvent.html]
|
||||
[Calling open twice on 'details' fires only one toggle event]
|
||||
expected: FAIL
|
||||
|
||||
[Setting open=true to opened 'details' element should not fire a toggle event at the 'details' element]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[DOMContentLoaded-defer.html]
|
||||
[The end: DOMContentLoaded and defer scripts]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
[2d.shadow.offset.negativeX.html]
|
||||
expected: CRASH
|
||||
[Shadows can be offset with negative x]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[realtimeanalyser-fft-scaling.html]
|
||||
expected: TIMEOUT
|
||||
[X 2048-point FFT peak position is not equal to 64. Got 0.]
|
||||
expected: FAIL
|
||||
|
||||
|
|
5
tests/wpt/metadata/webmessaging/with-ports/017.html.ini
Normal file
5
tests/wpt/metadata/webmessaging/with-ports/017.html.ini
Normal file
|
@ -0,0 +1,5 @@
|
|||
[017.html]
|
||||
expected: TIMEOUT
|
||||
[origin of the script that invoked the method, about:blank]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[017.html]
|
||||
expected: TIMEOUT
|
||||
[origin of the script that invoked the method, about:blank]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[WorkerGlobalScope-close.html]
|
||||
[Test sending a message after closing.]
|
||||
expected: FAIL
|
||||
|
|
@ -1,5 +1,4 @@
|
|||
[import-in-moduleworker.html]
|
||||
expected: ERROR
|
||||
[Base URL in module dedicated workers: import]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[sharedworker-in-worker.html]
|
||||
expected: ERROR
|
||||
[Base URL in workers: new SharedWorker()]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
[Worker-constructor.html]
|
||||
expected: ERROR
|
|
@ -0,0 +1,221 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="UTF-8">
|
||||
<meta charset="UTF-8">
|
||||
<title>clip-path-interpolation</title>
|
||||
<link rel="help" href="https://drafts.fxtf.org/css-masking-1/#theclip-path">
|
||||
<meta name="assert" content="clip-path supports animation">
|
||||
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/interpolation-testcommon.js"></script>
|
||||
|
||||
<style>
|
||||
.parent {
|
||||
clip-path: inset(10px);
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.target {
|
||||
display: inline-block;
|
||||
width: 100px;
|
||||
height: 100px;
|
||||
background-color: black;
|
||||
clip-path: inset(10px);
|
||||
}
|
||||
|
||||
.expected {
|
||||
background-color: green;
|
||||
}
|
||||
</style>
|
||||
<body>
|
||||
<script>
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: neutralKeyframe,
|
||||
to: 'inset(20px)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'inset(7px)'},
|
||||
{at: 0, expect: 'inset(10px)'},
|
||||
{at: 0.3, expect: 'inset(13px)'},
|
||||
{at: 0.6, expect: 'inset(16px)'},
|
||||
{at: 1, expect: 'inset(20px)'},
|
||||
{at: 1.5, expect: 'inset(25px)'},
|
||||
]);
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'initial',
|
||||
to: 'inset(20px)',
|
||||
});
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'inherit',
|
||||
to: 'inset(20px)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'inset(7px)'},
|
||||
{at: 0, expect: 'inset(10px)'},
|
||||
{at: 0.3, expect: 'inset(13px)'},
|
||||
{at: 0.6, expect: 'inset(16px)'},
|
||||
{at: 1, expect: 'inset(20px)'},
|
||||
{at: 1.5, expect: 'inset(25px)'},
|
||||
]);
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'unset',
|
||||
to: 'inset(20px)',
|
||||
});
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'none',
|
||||
to: 'circle(3px at 1px 2px)',
|
||||
});
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'circle(10px at 25px 75%)',
|
||||
to: 'circle(50px at 50px center)'
|
||||
}, [
|
||||
{at: -0.3, expect: 'circle(0px at 17.5px 82.5%)'}, // radius can't be negative
|
||||
{at: 0, expect: 'circle(10px at 25px 75%)'},
|
||||
{at: 0.3, expect: 'circle(22px at 32.5px 67.5%)'},
|
||||
{at: 0.6, expect: 'circle(34px at 40px 60%)'},
|
||||
{at: 1, expect: 'circle(50px at 50px 50%)'},
|
||||
{at: 1.5, expect: 'circle(70px at 62.5px 37.5%)'},
|
||||
]);
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'circle(farthest-side at 25px 75%)',
|
||||
to: 'circle(farthest-side at 50px center)'
|
||||
});
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'circle(closest-side at 10px 20px)',
|
||||
to: 'circle(farthest-side at 30px 40px)',
|
||||
});
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'circle(50px at 10px 20px)',
|
||||
to: 'circle(farthest-side at 30px 40px)',
|
||||
});
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'ellipse(10px 20px at 25px 75px)',
|
||||
to: 'ellipse(50px 100px at 50px 50px)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'ellipse(0px 0px at 17.5px 82.5px)'}, // radius can't be negative
|
||||
{at: 0, expect: 'ellipse(10px 20px at 25px 75px)'},
|
||||
{at: 0.3, expect: 'ellipse(22px 44px at 32.5px 67.5px)'},
|
||||
{at: 0.6, expect: 'ellipse(34px 68px at 40px 60px)'},
|
||||
{at: 1, expect: 'ellipse(50px 100px at 50px 50px)'},
|
||||
{at: 1.5, expect: 'ellipse(70px 140px at 62.5px 37.5px)'},
|
||||
]);
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'ellipse(closest-side farthest-side at 25px 75%)',
|
||||
to: 'ellipse(closest-side farthest-side at 50px center)',
|
||||
});
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'ellipse(closest-side farthest-side at 10px 20px)',
|
||||
to: 'ellipse(farthest-side closest-side at 30px 40px)',
|
||||
});
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'ellipse(50px closest-side at 10px 20px)',
|
||||
to: 'ellipse(150px farthest-side at 30px 40px)',
|
||||
});
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'inset(20px)',
|
||||
to: 'inset(40%)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'inset(calc(26px + -12%))'},
|
||||
{at: 0, expect: 'inset(calc(20px + 0%))'},
|
||||
{at: 0.3, expect: 'inset(calc(14px + 12%))'},
|
||||
{at: 0.6, expect: 'inset(calc(8px + 24%))'},
|
||||
{at: 1, expect: 'inset(40%)'},
|
||||
{at: 1.5, expect: 'inset(calc(-10px + 60%))'},
|
||||
]);
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'inset(1px 2px 3px 4px round 10px 20px 30px 40px / 50px 60px 70px 80px)',
|
||||
to: 'inset(101px 102px 103px 104px round 110px 120px 130px 140px / 150px 160px 170px 180px)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'inset(-29px -28px -27px -26px round 0px 0px 0px 10px / 20px 30px 40px 50px)'},
|
||||
{at: 0, expect: 'inset(1px 2px 3px 4px round 10px 20px 30px 40px / 50px 60px 70px 80px)'},
|
||||
{at: 0.3, expect: 'inset(31px 32px 33px 34px round 40px 50px 60px 70px / 80px 90px 100px 110px)'},
|
||||
{at: 0.6, expect: 'inset(61px 62px 63px 64px round 70px 80px 90px 100px / 110px 120px 130px 140px)'},
|
||||
{at: 1, expect: 'inset(101px 102px 103px 104px round 110px 120px 130px 140px / 150px 160px 170px 180px)'},
|
||||
{at: 1.5, expect: 'inset(151px 152px 153px 154px round 160px 170px 180px 190px / 200px 210px 220px 230px)'},
|
||||
]);
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'inset(1px 2px round 100px 200px)',
|
||||
to: 'inset(101px 102px 101px 102px)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'inset(-29px -28px round 130px 260px)'},
|
||||
{at: 0, expect: 'inset(1px 2px round 100px 200px)'},
|
||||
{at: 0.3, expect: 'inset(31px 32px round 70px 140px)'},
|
||||
{at: 0.6, expect: 'inset(61px 62px round 40px 80px)'},
|
||||
{at: 1, expect: 'inset(101px 102px)'},
|
||||
{at: 1.5, expect: 'inset(151px 152px)'}, // border radius can't be negative
|
||||
]);
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'polygon(10px 20%, 30px 40%)',
|
||||
to: 'polygon(110px 120%, 130px 140%)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'polygon(-20px -10%, 0px 10%)'},
|
||||
{at: 0, expect: 'polygon(10px 20%, 30px 40%)'},
|
||||
{at: 0.3, expect: 'polygon(40px 50%, 60px 70%)'},
|
||||
{at: 0.6, expect: 'polygon(70px 80%, 90px 100%)'},
|
||||
{at: 1, expect: 'polygon(110px 120%, 130px 140%)'},
|
||||
{at: 1.5, expect: 'polygon(160px 170%, 180px 190%)'},
|
||||
]);
|
||||
|
||||
test_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'polygon(evenodd, 10px 20px)',
|
||||
to: 'polygon(evenodd, 110px 120px)',
|
||||
}, [
|
||||
{at: -0.3, expect: 'polygon(evenodd, -20px -10px)'},
|
||||
{at: 0, expect: 'polygon(evenodd, 10px 20px)'},
|
||||
{at: 0.3, expect: 'polygon(evenodd, 40px 50px)'},
|
||||
{at: 0.6, expect: 'polygon(evenodd, 70px 80px)'},
|
||||
{at: 1, expect: 'polygon(evenodd, 110px 120px)'},
|
||||
{at: 1.5, expect: 'polygon(evenodd, 160px 170px)'},
|
||||
]);
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'polygon(evenodd, 10px 20px)',
|
||||
to: 'polygon(nonzero, 110px 120px)',
|
||||
});
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'polygon(evenodd, 10px 20px)',
|
||||
to: 'polygon(110px 120px)',
|
||||
});
|
||||
|
||||
test_no_interpolation({
|
||||
property: 'clip-path',
|
||||
from: 'polygon(10px 20px, 30px 40px)',
|
||||
to: 'polygon(110px 120px)',
|
||||
});
|
||||
</script>
|
||||
</body>
|
|
@ -36,7 +36,7 @@ pip install --user virtualenv
|
|||
To make the `PATH` change persistent, add it to your `~/.bash_profile` file or
|
||||
wherever you currently set your PATH.
|
||||
|
||||
See also [additional setup required to run Safari](safari).
|
||||
See also [additional setup required to run Safari](safari.md).
|
||||
|
||||
### Windows Setup
|
||||
**Note:** In general, Windows Subsystem for Linux will provide the smoothest
|
||||
|
|
|
@ -28,7 +28,7 @@ There's also a load of [general guidelines](general-guidelines) that apply to al
|
|||
server-features
|
||||
submission-process
|
||||
testdriver
|
||||
testdriver-tutorial
|
||||
testdriver-extension-tutorial
|
||||
testharness
|
||||
testharness-tutorial
|
||||
tools
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
# testdriver.js Tutorial
|
||||
|
||||
# Testdriver extension tutorial
|
||||
Adding new commands to testdriver.js
|
||||
|
||||
## Assumptions
|
|
@ -16,16 +16,22 @@ the global scope.
|
|||
NB: presently, testdriver.js only works in the top-level test browsing
|
||||
context (and not therefore in any frame or window opened from it).
|
||||
|
||||
### action_sequence
|
||||
Usage: `test_driver.action_sequence(actions)`
|
||||
* `actions`: an array of `Action` objects
|
||||
### Actions
|
||||
Usage:
|
||||
```
|
||||
let actions = new test_driver.Actions()
|
||||
.action1()
|
||||
.action2();
|
||||
actions.send()
|
||||
```
|
||||
|
||||
This function causes a sequence of actions to be sent to the browser. It is based on the [WebDriver API](https://w3c.github.io/webdriver/#actions).
|
||||
Test authors are encouraged to use the builder API to generate the sequence of actions. The builder
|
||||
API can be accessed via the `new test_driver.Actions()` object, and actions are defined in [testdriver-actions.js](https://github.com/web-platform-tests/wpt/blob/master/resources/testdriver-actions.js)
|
||||
|
||||
The `actions.send()` function causes the sequence of actions to be sent to the browser. It is based on the [WebDriver API](https://w3c.github.io/webdriver/#actions).
|
||||
The action can be a keyboard action, a pointer action or a pause. It returns a `Promise` that
|
||||
resolves after the actions have been sent or rejects if an error was thrown.
|
||||
|
||||
Test authors are encouraged to use the builder API to generate the sequence of actions. The builder
|
||||
API can be accessed via the `new test_driver.Actions()` object.
|
||||
|
||||
Example:
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
|
||||
idlharness
|
||||
testharness-api
|
||||
testdriver-tutorial
|
||||
testdriver-extension-tutorial
|
||||
testdriver
|
||||
```
|
||||
|
||||
|
|
|
@ -266,9 +266,10 @@ interface HTMLQuoteElement : HTMLElement {
|
|||
[CEReactions] attribute USVString cite;
|
||||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor]
|
||||
[Exposed=Window]
|
||||
interface HTMLOListElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute boolean reversed;
|
||||
[CEReactions] attribute long start;
|
||||
[CEReactions] attribute DOMString type;
|
||||
|
@ -283,16 +284,17 @@ interface HTMLUListElement : HTMLElement {
|
|||
// also has obsolete members
|
||||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor]
|
||||
[Exposed=Window]
|
||||
interface HTMLMenuElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
// also has obsolete members
|
||||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor]
|
||||
[Exposed=Window]
|
||||
interface HTMLLIElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute long value;
|
||||
|
||||
// also has obsolete members
|
||||
|
@ -339,9 +341,10 @@ interface HTMLDataElement : HTMLElement {
|
|||
[CEReactions] attribute DOMString value;
|
||||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor]
|
||||
[Exposed=Window]
|
||||
interface HTMLTimeElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute DOMString dateTime;
|
||||
};
|
||||
|
||||
|
@ -396,9 +399,10 @@ interface HTMLSourceElement : HTMLElement {
|
|||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor,
|
||||
NamedConstructor=Image(optional unsigned long width, optional unsigned long height)]
|
||||
interface HTMLImageElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute DOMString alt;
|
||||
[CEReactions] attribute USVString src;
|
||||
[CEReactions] attribute USVString srcset;
|
||||
|
@ -489,9 +493,10 @@ interface HTMLParamElement : HTMLElement {
|
|||
// also has obsolete members
|
||||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor]
|
||||
[Exposed=Window]
|
||||
interface HTMLVideoElement : HTMLMediaElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute unsigned long width;
|
||||
[CEReactions] attribute unsigned long height;
|
||||
readonly attribute unsigned long videoWidth;
|
||||
|
@ -501,9 +506,10 @@ interface HTMLVideoElement : HTMLMediaElement {
|
|||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor,
|
||||
NamedConstructor=Audio(optional DOMString src)]
|
||||
interface HTMLAudioElement : HTMLMediaElement {};
|
||||
interface HTMLAudioElement : HTMLMediaElement {
|
||||
[HTMLConstructor] constructor();
|
||||
};
|
||||
|
||||
[Exposed=Window]
|
||||
interface HTMLTrackElement : HTMLElement {
|
||||
|
@ -818,9 +824,10 @@ interface HTMLTableCellElement : HTMLElement {
|
|||
|
||||
[Exposed=Window,
|
||||
OverrideBuiltins,
|
||||
LegacyUnenumerableNamedProperties,
|
||||
HTMLConstructor]
|
||||
LegacyUnenumerableNamedProperties]
|
||||
interface HTMLFormElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute DOMString acceptCharset;
|
||||
[CEReactions] attribute USVString action;
|
||||
[CEReactions] attribute DOMString autocomplete;
|
||||
|
@ -839,7 +846,7 @@ interface HTMLFormElement : HTMLElement {
|
|||
getter (RadioNodeList or Element) (DOMString name);
|
||||
|
||||
void submit();
|
||||
void requestSubmit(optional HTMLElement submitter);
|
||||
void requestSubmit(optional HTMLElement? submitter = null);
|
||||
[CEReactions] void reset();
|
||||
boolean checkValidity();
|
||||
boolean reportValidity();
|
||||
|
@ -996,9 +1003,10 @@ interface HTMLOptGroupElement : HTMLElement {
|
|||
};
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor,
|
||||
NamedConstructor=Option(optional DOMString text = "", optional DOMString value, optional boolean defaultSelected = false, optional boolean selected = false)]
|
||||
interface HTMLOptionElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute boolean disabled;
|
||||
readonly attribute HTMLFormElement? form;
|
||||
[CEReactions] attribute DOMString label;
|
||||
|
@ -1147,6 +1155,17 @@ interface ValidityState {
|
|||
readonly attribute boolean valid;
|
||||
};
|
||||
|
||||
[Exposed=Window]
|
||||
interface SubmitEvent : Event {
|
||||
constructor(DOMString type, optional SubmitEventInit eventInitDict = {});
|
||||
|
||||
readonly attribute HTMLElement? submitter;
|
||||
};
|
||||
|
||||
dictionary SubmitEventInit : EventInit {
|
||||
HTMLElement? submitter = null;
|
||||
};
|
||||
|
||||
[Exposed=Window,
|
||||
Constructor(DOMString type, optional FormDataEventInit eventInitDict = {})]
|
||||
interface FormDataEvent : Event {
|
||||
|
@ -1214,9 +1233,10 @@ dictionary AssignedNodesOptions {
|
|||
|
||||
typedef (CanvasRenderingContext2D or ImageBitmapRenderingContext or WebGLRenderingContext or WebGL2RenderingContext) RenderingContext;
|
||||
|
||||
[Exposed=Window,
|
||||
HTMLConstructor]
|
||||
[Exposed=Window]
|
||||
interface HTMLCanvasElement : HTMLElement {
|
||||
[HTMLConstructor] constructor();
|
||||
|
||||
[CEReactions] attribute unsigned long width;
|
||||
[CEReactions] attribute unsigned long height;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue