mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
Update web-platform-tests to revision 9614def367ae8af8247142c34b00f755863d2fbb
This commit is contained in:
parent
6cb39fad47
commit
968ce5b5b3
48 changed files with 919 additions and 130 deletions
|
@ -37,3 +37,6 @@
|
|||
[Revoke blob URL after creating Request, will fetch]
|
||||
expected: FAIL
|
||||
|
||||
[Revoke blob URL after calling fetch, fetch should succeed]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -292751,6 +292751,11 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"interfaces/webrtc-dscp.idl": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"interfaces/webrtc-stats.idl": [
|
||||
[
|
||||
{}
|
||||
|
@ -330416,6 +330421,102 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-delay-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-delay-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-delay-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-delay-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-direction-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-direction-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-direction-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-direction-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-duration-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-duration-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-duration-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-duration-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-fill-mode-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-fill-mode-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-fill-mode-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-fill-mode-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-iteration-count-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-iteration-count-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-iteration-count-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-iteration-count-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-name-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-name-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-name-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-name-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-play-state-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-play-state-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-play-state-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-play-state-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-timing-function-invalid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-timing-function-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/parsing/animation-timing-function-valid.html": [
|
||||
[
|
||||
"/css/css-animations/parsing/animation-timing-function-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-animations/pending-style-changes-001.html": [
|
||||
[
|
||||
"/css/css-animations/pending-style-changes-001.html",
|
||||
|
@ -336708,6 +336809,54 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-delay-invalid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-delay-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-delay-valid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-delay-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-duration-invalid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-duration-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-duration-valid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-duration-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-property-invalid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-property-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-property-valid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-property-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-timing-function-invalid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-timing-function-invalid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/parsing/transition-timing-function-valid.html": [
|
||||
[
|
||||
"/css/css-transitions/parsing/transition-timing-function-valid.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transitions/properties-value-001.html": [
|
||||
[
|
||||
"/css/css-transitions/properties-value-001.html",
|
||||
|
@ -522229,6 +522378,70 @@
|
|||
"1d3ed2b9b806792c7efaeeee9ab264101dd222bc",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-delay-invalid.html": [
|
||||
"a58d2cd11bc572d3a7899fb70b8b04adbd76a713",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-delay-valid.html": [
|
||||
"5ff0416cc64241f81025f39af20d186042d49a30",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-direction-invalid.html": [
|
||||
"0b48d97f0a1bb670daec7335049aa486810a2cde",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-direction-valid.html": [
|
||||
"bcc9acc3428cfcdadc6d48fc0fa01d51eb747452",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-duration-invalid.html": [
|
||||
"5edacd3735e4f3ac0c0724415b3ca0052f10d33b",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-duration-valid.html": [
|
||||
"e65a1a707246eb2c1773da17c355d71118fd0db4",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-fill-mode-invalid.html": [
|
||||
"dda2221f4746a64778ea4c5a82fa42c35243a342",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-fill-mode-valid.html": [
|
||||
"1f73a821d15119d6a8fc2720d53f6cefdd29fb5d",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-iteration-count-invalid.html": [
|
||||
"ff1e8e23a08cf58c08922eb40145e916852c0562",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-iteration-count-valid.html": [
|
||||
"be8a83798908a6771b935e38fe7a8608be9821ed",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-name-invalid.html": [
|
||||
"77d53f990b1607c07a07648b5f0283f9fb5e4fbf",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-name-valid.html": [
|
||||
"9ed73d4d15ff615c4318719bc8802796a88149c8",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-play-state-invalid.html": [
|
||||
"f47a2f75ddfc35a279037ada8df34077bd1308ab",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-play-state-valid.html": [
|
||||
"ce6d053ec2736ec8d5e8420b3d1a1e4f07fd04ed",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-timing-function-invalid.html": [
|
||||
"adc1cc10e39d09df78c4398ffca008739d751076",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/parsing/animation-timing-function-valid.html": [
|
||||
"63e2805485bfb1f8db9dfe3ad70979ade7e11cd4",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-animations/pending-style-changes-001.html": [
|
||||
"fb74d7fa7d062d60153d47913df9eb2b0c7267c8",
|
||||
"testharness"
|
||||
|
@ -544666,7 +544879,7 @@
|
|||
"reftest"
|
||||
],
|
||||
"css/css-masking/mask-image/mask-image-url-remote-mask.html": [
|
||||
"cfa3a6166cdcb41b2feaab2ffd5c087a568771f5",
|
||||
"f3f2eefaa92df83296379efd861b39e2ab65f78e",
|
||||
"reftest"
|
||||
],
|
||||
"css/css-masking/mask-image/reference/mask-image-ref.html": [
|
||||
|
@ -544682,7 +544895,7 @@
|
|||
"support"
|
||||
],
|
||||
"css/css-masking/mask-image/support/mask.svg": [
|
||||
"30e601c87c32a08912e261dab22734033df1ef8e",
|
||||
"cab55923d32ddb9525cb81a12d8035b1bf51bb4c",
|
||||
"support"
|
||||
],
|
||||
"css/css-masking/parsing/clip-invalid.html": [
|
||||
|
@ -561945,6 +562158,38 @@
|
|||
"4cc7ee50eb4915fcf95843f7eeee266abfa7b81a",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-delay-invalid.html": [
|
||||
"b34d50551ce433ebe672c7fddb4a549582c754db",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-delay-valid.html": [
|
||||
"d6b42b9c059456f10c425f7217ade6b2cd84c1f4",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-duration-invalid.html": [
|
||||
"fd0f341f4071b53561cf8b072bb105d3bd1a4563",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-duration-valid.html": [
|
||||
"311ca086695151747559a0995b61c7fe4c755592",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-property-invalid.html": [
|
||||
"903a206eac13688a51ff2ba88552de67efa2e9cb",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-property-valid.html": [
|
||||
"4e3894f5aa94e00aa59406ee1aab92b9226483af",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-timing-function-invalid.html": [
|
||||
"936defa6cce5dd7b69bf9344c60add178de6589a",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/parsing/transition-timing-function-valid.html": [
|
||||
"e11ef0002e43b65e06c8aec7dffab2fe7d48377f",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-transitions/properties-value-001.html": [
|
||||
"9182930ed78f9ff2adbc4754a8613fc0316b868a",
|
||||
"testharness"
|
||||
|
@ -614038,7 +614283,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/background-fetch.idl": [
|
||||
"92b6026f8b6dbbc4a79c1b3cdfdf73a0253aeaa6",
|
||||
"130d5d825a5bef49fd651c0cb326b9b40a7fa2c7",
|
||||
"support"
|
||||
],
|
||||
"interfaces/battery-status.idl": [
|
||||
|
@ -614062,7 +614307,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/cookie-store.idl": [
|
||||
"454da38b18240e6e5e98a92cd2c9d129ee71d4a0",
|
||||
"d872b7aadb25b4720e78d98f3bf04c0c15151084",
|
||||
"support"
|
||||
],
|
||||
"interfaces/cors-rfc1918.idl": [
|
||||
|
@ -614218,7 +614463,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/intersection-observer.idl": [
|
||||
"b48e1cbab37fef9b9c8dd5efb03fc6c222a3e856",
|
||||
"ffda8f5c64dba8d225cc7126371b73980f4ce48e",
|
||||
"support"
|
||||
],
|
||||
"interfaces/keyboard-lock.idl": [
|
||||
|
@ -614298,7 +614543,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/payment-handler.idl": [
|
||||
"9f10d7e70194cb83dc59055006d96426f5669536",
|
||||
"b19a7302dbacaf8ef425e568d5d5409b4b2811d5",
|
||||
"support"
|
||||
],
|
||||
"interfaces/payment-method-basic-card.idl": [
|
||||
|
@ -614306,7 +614551,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/payment-request.idl": [
|
||||
"d844f7cc788c5be1c882fe510bc85f25dd250659",
|
||||
"05790c7d76d6e5f36b47fbf23615822b4a68c18a",
|
||||
"support"
|
||||
],
|
||||
"interfaces/performance-timeline.idl": [
|
||||
|
@ -614326,7 +614571,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/pointerevents.idl": [
|
||||
"63d39a285232b0319c24ff907871fe92bd70d167",
|
||||
"da822bba0e58e36ea0a892b008075120282d8a85",
|
||||
"support"
|
||||
],
|
||||
"interfaces/pointerlock.idl": [
|
||||
|
@ -614438,7 +614683,7 @@
|
|||
"support"
|
||||
],
|
||||
"interfaces/wasm-js-api.idl": [
|
||||
"04c817dcb11ad906d61c5576e43df1fcdf168860",
|
||||
"6de14fb8f0895a72b69f37b9dd8b72e2ab1604e0",
|
||||
"support"
|
||||
],
|
||||
"interfaces/web-animations.idl": [
|
||||
|
@ -614481,6 +614726,10 @@
|
|||
"769433b19b31e5c534f19d82810635e2e22d38e9",
|
||||
"support"
|
||||
],
|
||||
"interfaces/webrtc-dscp.idl": [
|
||||
"718447bbf4a3ed92ac853ba2075a24ba41d3049d",
|
||||
"support"
|
||||
],
|
||||
"interfaces/webrtc-stats.idl": [
|
||||
"ee5cce403f8d325b73661f45b65bd09f5faae861",
|
||||
"support"
|
||||
|
@ -639734,7 +639983,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"shadow-dom/Extensions-to-Event-Interface.html": [
|
||||
"52cda0b6bb863cf5f09d9752874165656bfc3fe3",
|
||||
"806d539cad45d55d635ee55637be2c8b5c014b55",
|
||||
"testharness"
|
||||
],
|
||||
"shadow-dom/HTMLSlotElement-interface.html": [
|
||||
|
@ -639830,7 +640079,7 @@
|
|||
"reftest"
|
||||
],
|
||||
"shadow-dom/leaktests/get-elements.html": [
|
||||
"2ce916a650ed3749e18b6fd1abe488a562b0faaf",
|
||||
"40fa9b69314a9cd9f1eee777ce4120440d7801df",
|
||||
"testharness"
|
||||
],
|
||||
"shadow-dom/leaktests/html-collection.html": [
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[animation-timing-function-valid.html]
|
||||
[e.style['animation-timing-function'\] = "steps(2, end)" should set the property value]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[transition-timing-function-valid.html]
|
||||
[e.style['transition-timing-function'\] = "steps(2, end)" should set the property value]
|
||||
expected: FAIL
|
||||
|
|
@ -473,9 +473,39 @@
|
|||
[min-width length(ex) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent percentage(%) / events]
|
||||
[text-indent length(pc) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-shadow shadow(shadow) / events]
|
||||
[text-indent length(ex) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent length(px) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent length(mm) / values]
|
||||
expected: FAIL
|
||||
|
||||
[word-spacing length(in) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent length(cm) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent length(pt) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-shadow shadow(shadow) / values]
|
||||
expected: FAIL
|
||||
|
||||
[word-spacing percentage(%) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent length(in) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent length(em) / values]
|
||||
expected: FAIL
|
||||
|
||||
[text-indent percentage(%) / values]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -65,12 +65,12 @@
|
|||
[left intermediate]
|
||||
expected: FAIL
|
||||
|
||||
[bottom intermediate]
|
||||
expected: FAIL
|
||||
|
||||
[outline-width intermediate]
|
||||
expected: FAIL
|
||||
|
||||
[outline-width end]
|
||||
[padding-right end]
|
||||
expected: FAIL
|
||||
|
||||
[border-top-width end]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[fetch-in-iframe.html]
|
||||
expected: CRASH
|
||||
[Untitled]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[traverse_the_history_4.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -30,3 +30,6 @@
|
|||
[Set HTTP URL frame location.protocol to data]
|
||||
expected: FAIL
|
||||
|
||||
[Set HTTP URL frame location.protocol to x]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
[script-onerror-insertion-point-2.html]
|
||||
expected: TIMEOUT
|
|
@ -2,19 +2,10 @@
|
|||
[request.formData() with input: a&b&c]
|
||||
expected: FAIL
|
||||
|
||||
[response.formData() with input: &&&a=b&&&&c=d&]
|
||||
expected: FAIL
|
||||
|
||||
[response.formData() with input: a&b&c]
|
||||
expected: FAIL
|
||||
|
||||
[request.formData() with input: _charset_=windows-1252&test=%C2x]
|
||||
expected: FAIL
|
||||
|
||||
[response.formData() with input: _charset_=windows-1252&test=%C2x]
|
||||
expected: FAIL
|
||||
|
||||
[request.formData() with input: a=b&c=d&]
|
||||
[response.formData() with input: a=b&c=d]
|
||||
expected: FAIL
|
||||
|
||||
|
||||
|
@ -22,18 +13,15 @@
|
|||
[response.formData() with input: a&b&c]
|
||||
expected: FAIL
|
||||
|
||||
[request.formData() with input: a&b&c]
|
||||
expected: FAIL
|
||||
|
||||
[request.formData() with input: _charset_=windows-1252&test=%C2x]
|
||||
expected: FAIL
|
||||
|
||||
[response.formData() with input: _charset_=windows-1252&test=%C2x]
|
||||
[response.formData() with input: &&&a=b&&&&c=d&]
|
||||
expected: FAIL
|
||||
|
||||
[request.formData() with input: &&&a=b&&&&c=d&]
|
||||
[response.formData() with input: a=b&c=d]
|
||||
expected: FAIL
|
||||
|
||||
[response.formData() with input: a=b&c=d&]
|
||||
[request.formData() with input: a=b&c=d&]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
[005.html]
|
||||
type: testharness
|
||||
expected: ERROR
|
||||
[dedicated worker in shared worker in dedicated worker]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-delay with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-delay">
|
||||
<meta name="assert" content="animation-delay supports only the grammar '<single-animation-play-state> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-delay", "infinite");
|
||||
test_invalid_value("animation-delay", "0");
|
||||
test_invalid_value("animation-delay", "1s 2s");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,20 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-delay with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-delay">
|
||||
<meta name="assert" content="animation-delay supports the full grammar '<single-animation-play-state> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-delay", "-5ms");
|
||||
test_valid_value("animation-delay", "0s");
|
||||
test_valid_value("animation-delay", "10s");
|
||||
test_valid_value("animation-delay", "20s, 10s");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,18 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-direction with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-direction">
|
||||
<meta name="assert" content="animation-direction supports only the grammar '<single-animation-direction> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-direction", "auto");
|
||||
test_invalid_value("animation-direction", "normal reverse");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-direction with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-direction">
|
||||
<meta name="assert" content="animation-direction supports the full grammar '<single-animation-direction> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-direction", "normal");
|
||||
test_valid_value("animation-direction", "reverse");
|
||||
test_valid_value("animation-direction", "alternate");
|
||||
test_valid_value("animation-direction", "alternate-reverse");
|
||||
test_valid_value("animation-direction", "normal, reverse, alternate, alternate-reverse");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,20 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-duration with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-duration">
|
||||
<meta name="assert" content="animation-duration supports only the grammar '<time> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-duration", '-3s');
|
||||
test_invalid_value("animation-duration", '0');
|
||||
test_invalid_value("animation-duration", 'infinite');
|
||||
test_invalid_value("animation-duration", '1s 2s');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-duration with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-duration">
|
||||
<meta name="assert" content="animation-duration supports the full grammar '<time> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-duration", '3s');
|
||||
test_valid_value("animation-duration", '500ms');
|
||||
test_valid_value("animation-duration", '1s, 2s, 3s');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,18 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-fill-mode with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-fill-mode">
|
||||
<meta name="assert" content="animation-fill-mode supports only the grammar '<single-animation-fill-mode> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-fill-mode", "auto");
|
||||
test_invalid_value("animation-fill-mode", "forwards backwards");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-fill-mode with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-fill-mode">
|
||||
<meta name="assert" content="animation-fill-mode supports the full grammar '<single-animation-fill-mode> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-fill-mode", "none");
|
||||
test_valid_value("animation-fill-mode", "forwards");
|
||||
test_valid_value("animation-fill-mode", "backwards");
|
||||
test_valid_value("animation-fill-mode", "both");
|
||||
test_valid_value("animation-fill-mode", "none, forwards, backwards, both");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-iteration-count with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-iteration-count">
|
||||
<meta name="assert" content="animation-iteration-count supports only the grammar '<single-animation-iteration-count> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-iteration-count", "auto");
|
||||
test_invalid_value("animation-iteration-count", "-2");
|
||||
test_invalid_value("animation-iteration-count", "3 4");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,22 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-iteration-count with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-iteration-count">
|
||||
<meta name="assert" content="animation-iteration-count supports the full grammar '<single-animation-iteration-count> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-iteration-count", "0");
|
||||
test_valid_value("animation-iteration-count", "3");
|
||||
test_valid_value("animation-iteration-count", "4.5");
|
||||
test_valid_value("animation-iteration-count", "infinite");
|
||||
|
||||
test_valid_value("animation-iteration-count", "0, infinite, 3");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,23 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-name with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-name">
|
||||
<meta name="assert" content="animation-name supports only the grammar '[ none | <keyframes-name> ]#'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-name", '12');
|
||||
test_invalid_value("animation-name", 'one two');
|
||||
|
||||
test_invalid_value("animation-name", 'one, initial');
|
||||
test_invalid_value("animation-name", 'one, inherit');
|
||||
test_invalid_value("animation-name", 'one, unset');
|
||||
test_invalid_value("animation-name", 'default, two');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,29 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-name with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-name">
|
||||
<meta name="assert" content="animation-name supports the full grammar '[ none | <keyframes-name> ]#'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-name", 'NONE', 'none');
|
||||
|
||||
test_valid_value("animation-name", 'foo');
|
||||
test_valid_value("animation-name", 'Both');
|
||||
test_valid_value("animation-name", 'ease-in');
|
||||
test_valid_value("animation-name", 'infinite');
|
||||
test_valid_value("animation-name", 'paused');
|
||||
test_valid_value("animation-name", 'first, second, third');
|
||||
|
||||
test_valid_value("animation-name", '"string"');
|
||||
test_valid_value("animation-name", '"multi word string"');
|
||||
test_valid_value("animation-name", '"initial"');
|
||||
test_valid_value("animation-name", '"---\\22---"', '\"---\\\"---\"');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,18 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-play-state with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-play-state">
|
||||
<meta name="assert" content="animation-play-state supports only the grammar '<single-animation-play-state> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-play-state", "auto");
|
||||
test_invalid_value("animation-play-state", "paused running");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-play-state with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-play-state">
|
||||
<meta name="assert" content="animation-play-state supports the full grammar '<single-animation-play-state> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-play-state", "running");
|
||||
test_valid_value("animation-play-state", "paused");
|
||||
test_valid_value("animation-play-state", "running, paused");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,23 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-timing-function with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-timing-function">
|
||||
<meta name="assert" content="animation-timing-function supports only the grammar '<timing-function> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("animation-timing-function", "auto");
|
||||
test_invalid_value("animation-timing-function", "ease-in ease-out");
|
||||
test_invalid_value("animation-timing-function", "cubic-bezier(1, 2, 3)");
|
||||
test_invalid_value("animation-timing-function", "cubic-bezier(1, 2, 3, infinite)");
|
||||
test_invalid_value("animation-timing-function", "cubic-bezier(1, 2, 3, 4, 5)");
|
||||
test_invalid_value("animation-timing-function", "cubic-bezier(-0.1, 0.1, 0.5, 0.9)");
|
||||
test_invalid_value("animation-timing-function", "cubic-bezier(0.5, 0.1, 1.1, 0.9)");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,31 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing animation-timing-function with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-animations/#propdef-animation-timing-function">
|
||||
<meta name="assert" content="animation-timing-function supports the full grammar '<timing-function> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("animation-timing-function", "linear");
|
||||
|
||||
test_valid_value("animation-timing-function", "ease");
|
||||
test_valid_value("animation-timing-function", "ease-in");
|
||||
test_valid_value("animation-timing-function", "ease-out");
|
||||
test_valid_value("animation-timing-function", "ease-in-out");
|
||||
test_valid_value("animation-timing-function", "cubic-bezier(0.1, 0.2, 0.8, 0.9)");
|
||||
test_valid_value("animation-timing-function", "cubic-bezier(0, -2, 1, 3)");
|
||||
test_valid_value("animation-timing-function", "cubic-bezier(0, 0.7, 1, 1.3)");
|
||||
|
||||
|
||||
test_valid_value("animation-timing-function", "steps(4, start)");
|
||||
test_valid_value("animation-timing-function", "steps(2, end)");
|
||||
|
||||
test_valid_value("animation-timing-function", "linear, ease, linear");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -26,8 +26,3 @@
|
|||
</style>
|
||||
<p>The test passes if there is a green square and no red below.</p>
|
||||
<div id="back"></div><div id="front"></div>
|
||||
<svg>
|
||||
<!-- mask-image doesn't block onload, so we use an empty g here to
|
||||
force mask.svg to load before onload. -->
|
||||
<use href="support/mask.svg#empty"/>
|
||||
</svg>
|
||||
|
|
|
@ -2,5 +2,4 @@
|
|||
<mask id="mask">
|
||||
<rect x="50" y="50" width="100" height="100" fill="white"/>
|
||||
</mask>
|
||||
<g id="empty"/>
|
||||
</svg>
|
||||
|
|
Before Width: | Height: | Size: 181 B After Width: | Height: | Size: 163 B |
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Transitions: parsing transition-delay with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-delay">
|
||||
<meta name="assert" content="transition-delay supports only the grammar '<time> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("transition-delay", 'infinite');
|
||||
test_invalid_value("transition-delay", '0');
|
||||
test_invalid_value("transition-delay", '500ms 0.5s');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,20 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Transitions: parsing transition-delay with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-delay">
|
||||
<meta name="assert" content="transition-delay supports the full grammar '<time> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("transition-delay", '0s');
|
||||
test_valid_value("transition-delay", '500ms');
|
||||
test_valid_value("transition-delay", '1s, 2s');
|
||||
test_valid_value("transition-delay", '-1s, -2s');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Transitions: parsing transition-duration with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-duration">
|
||||
<meta name="assert" content="transition-duration supports only the grammar '<time> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("transition-duration", 'infinite');
|
||||
test_invalid_value("transition-duration", '-500ms');
|
||||
test_invalid_value("transition-duration", '1s 2s');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Transitions: parsing transition-duration with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-duration">
|
||||
<meta name="assert" content="transition-duration supports the full grammar '<time> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("transition-duration", '0s');
|
||||
test_valid_value("transition-duration", '500ms');
|
||||
test_valid_value("transition-duration", '1s, 2s');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Transitions: parsing transition-property with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-property">
|
||||
<meta name="assert" content="transition-property supports only the grammar 'none | <single-transition-property> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("transition-property", 'one two three');
|
||||
test_invalid_value("transition-property", '1, 2, 3');
|
||||
test_invalid_value("transition-property", 'none, one');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,22 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Transitions: parsing transition-property with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-property">
|
||||
<meta name="assert" content="transition-property supports the full grammar 'none | <single-transition-property> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("transition-property", 'none');
|
||||
test_valid_value("transition-property", 'all');
|
||||
test_valid_value("transition-property", 'one');
|
||||
test_valid_value("transition-property", 'one-two-three');
|
||||
test_valid_value("transition-property", 'one, two, three');
|
||||
test_valid_value("transition-property", 'width, all');
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,24 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Animations: parsing transition-timing-function with invalid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-timing-function">
|
||||
<link rel="help" href="https://drafts.csswg.org/css-timing-1/#typedef-timing-function">
|
||||
<meta name="assert" content="transition-timing-function supports only the grammar '<timing-function> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_invalid_value("transition-timing-function", "auto");
|
||||
test_invalid_value("transition-timing-function", "ease-in ease-out");
|
||||
test_invalid_value("transition-timing-function", "cubic-bezier(1, 2, 3)");
|
||||
test_invalid_value("transition-timing-function", "cubic-bezier(1, 2, 3, infinite)");
|
||||
test_invalid_value("transition-timing-function", "cubic-bezier(1, 2, 3, 4, 5)");
|
||||
test_invalid_value("transition-timing-function", "cubic-bezier(-0.1, 0.1, 0.5, 0.9)");
|
||||
test_invalid_value("transition-timing-function", "cubic-bezier(0.5, 0.1, 1.1, 0.9)");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,31 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Transitions: parsing transition-timing-function with valid values</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-transitions/#propdef-transition-timing-function">
|
||||
<link rel="help" href="https://drafts.csswg.org/css-timing-1/#typedef-timing-function">
|
||||
<meta name="assert" content="transition-timing-function supports the full grammar '<timing-function> #'.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/css/support/parsing-testcommon.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<script>
|
||||
test_valid_value("transition-timing-function", "linear");
|
||||
|
||||
test_valid_value("transition-timing-function", "ease");
|
||||
test_valid_value("transition-timing-function", "ease-in");
|
||||
test_valid_value("transition-timing-function", "ease-out");
|
||||
test_valid_value("transition-timing-function", "ease-in-out");
|
||||
test_valid_value("transition-timing-function", "cubic-bezier(0.1, 0.2, 0.8, 0.9)");
|
||||
test_valid_value("transition-timing-function", "cubic-bezier(0, -2, 1, 3)");
|
||||
test_valid_value("transition-timing-function", "cubic-bezier(0, 0.7, 1, 1.3)");
|
||||
|
||||
test_valid_value("transition-timing-function", "steps(4, start)");
|
||||
test_valid_value("transition-timing-function", "steps(2, end)");
|
||||
|
||||
test_valid_value("transition-timing-function", "linear, ease, linear");
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
|
@ -37,8 +37,9 @@ interface BackgroundFetchRegistration : EventTarget {
|
|||
readonly attribute unsigned long long uploaded;
|
||||
readonly attribute unsigned long long downloadTotal;
|
||||
readonly attribute unsigned long long downloaded;
|
||||
readonly attribute BackgroundFetchState state;
|
||||
readonly attribute BackgroundFetchResult result;
|
||||
readonly attribute BackgroundFetchFailureReason failureReason;
|
||||
readonly attribute boolean recordsAvailable;
|
||||
|
||||
attribute EventHandler onprogress;
|
||||
|
||||
|
@ -47,9 +48,10 @@ interface BackgroundFetchRegistration : EventTarget {
|
|||
Promise<sequence<BackgroundFetchRecord>> matchAll(optional RequestInfo request, optional CacheQueryOptions options);
|
||||
};
|
||||
|
||||
enum BackgroundFetchState { "pending", "success", "failure" };
|
||||
enum BackgroundFetchResult { "", "success", "failure" };
|
||||
|
||||
enum BackgroundFetchFailureReason {
|
||||
// The background fetch has not completed yet, or was successful.
|
||||
"",
|
||||
// The operation was aborted by the user, or abort() was called.
|
||||
"aborted",
|
||||
|
@ -61,7 +63,7 @@ enum BackgroundFetchFailureReason {
|
|||
// Storage quota was reached during the operation.
|
||||
"quota-exceeded",
|
||||
// The provided downloadTotal was exceeded.
|
||||
"total-download-exceeded"
|
||||
"download-total-exceeded"
|
||||
};
|
||||
|
||||
[Exposed=(Window,Worker)]
|
||||
|
|
|
@ -1,48 +1,31 @@
|
|||
// https://github.com/WICG/cookie-store/blob/gh-pages/explainer.md
|
||||
// GENERATED CONTENT - DO NOT EDIT
|
||||
// Content was automatically extracted by Reffy into reffy-reports
|
||||
// (https://github.com/tidoust/reffy-reports)
|
||||
// Source: Cookie Store API (https://wicg.github.io/cookie-store/)
|
||||
|
||||
enum CookieSameSite {
|
||||
"strict",
|
||||
"lax",
|
||||
"unrestricted"
|
||||
};
|
||||
[Exposed=(ServiceWorker,Window),
|
||||
SecureContext]
|
||||
interface CookieStore : EventTarget {
|
||||
Promise<CookieListItem?> get(USVString name);
|
||||
Promise<CookieListItem?> get(optional CookieStoreGetOptions options);
|
||||
|
||||
dictionary CookieListItem {
|
||||
required USVString name;
|
||||
USVString value;
|
||||
USVString? domain = null;
|
||||
USVString path = "/";
|
||||
DOMTimeStamp? expires = null;
|
||||
boolean secure = true;
|
||||
CookieSameSite sameSite = "strict";
|
||||
};
|
||||
Promise<CookieList> getAll(USVString name);
|
||||
Promise<CookieList> getAll(optional CookieStoreGetOptions options);
|
||||
|
||||
typedef sequence<CookieListItem> CookieList;
|
||||
Promise<void> set(USVString name, USVString value,
|
||||
optional CookieStoreSetOptions options);
|
||||
Promise<void> set(CookieStoreSetExtraOptions options);
|
||||
|
||||
dictionary CookieChangeEventInit : EventInit {
|
||||
CookieList changed;
|
||||
CookieList deleted;
|
||||
};
|
||||
Promise<void> delete(USVString name);
|
||||
Promise<void> delete(CookieStoreDeleteOptions options);
|
||||
|
||||
[
|
||||
Exposed=Window,
|
||||
SecureContext,
|
||||
Constructor(DOMString type, optional CookieChangeEventInit eventInitDict)
|
||||
] interface CookieChangeEvent : Event {
|
||||
readonly attribute CookieList changed;
|
||||
readonly attribute CookieList deleted;
|
||||
};
|
||||
[Exposed=ServiceWorker]
|
||||
Promise<void> subscribeToChanges(sequence<CookieStoreGetOptions> subscriptions);
|
||||
|
||||
dictionary ExtendableCookieChangeEventInit : ExtendableEventInit {
|
||||
CookieList changed;
|
||||
CookieList deleted;
|
||||
};
|
||||
[Exposed=ServiceWorker]
|
||||
Promise<sequence<CookieStoreGetOptions>> getChangeSubscriptions();
|
||||
|
||||
[
|
||||
Exposed=ServiceWorker,
|
||||
Constructor(DOMString type, optional ExtendableCookieChangeEventInit eventInitDict)
|
||||
] interface ExtendableCookieChangeEvent : ExtendableEvent {
|
||||
readonly attribute CookieList changed;
|
||||
readonly attribute CookieList deleted;
|
||||
attribute EventHandler onchange;
|
||||
};
|
||||
|
||||
enum CookieMatchType {
|
||||
|
@ -50,20 +33,18 @@ enum CookieMatchType {
|
|||
"starts-with"
|
||||
};
|
||||
|
||||
dictionary CookieStoreDeleteOptions {
|
||||
required USVString name;
|
||||
USVString? domain = null;
|
||||
USVString path = "/";
|
||||
boolean secure = true;
|
||||
CookieSameSite sameSite = "strict";
|
||||
};
|
||||
|
||||
dictionary CookieStoreGetOptions {
|
||||
USVString name;
|
||||
USVString url;
|
||||
CookieMatchType matchType = "equals";
|
||||
};
|
||||
|
||||
enum CookieSameSite {
|
||||
"strict",
|
||||
"lax",
|
||||
"unrestricted"
|
||||
};
|
||||
|
||||
dictionary CookieStoreSetOptions {
|
||||
DOMTimeStamp? expires = null;
|
||||
USVString? domain = null;
|
||||
|
@ -77,27 +58,35 @@ dictionary CookieStoreSetExtraOptions : CookieStoreSetOptions {
|
|||
required USVString value;
|
||||
};
|
||||
|
||||
[
|
||||
Exposed=(ServiceWorker,Window),
|
||||
SecureContext
|
||||
] interface CookieStore : EventTarget {
|
||||
Promise<CookieListItem?> get(USVString name);
|
||||
Promise<CookieListItem?> get(optional CookieStoreGetOptions options);
|
||||
dictionary CookieStoreDeleteOptions {
|
||||
required USVString name;
|
||||
USVString? domain = null;
|
||||
USVString path = "/";
|
||||
};
|
||||
|
||||
Promise<CookieList> getAll(USVString name);
|
||||
Promise<CookieList> getAll(optional CookieStoreGetOptions options);
|
||||
dictionary CookieListItem {
|
||||
required USVString name;
|
||||
USVString value;
|
||||
USVString? domain = null;
|
||||
USVString path = "/";
|
||||
DOMTimeStamp? expires = null;
|
||||
boolean secure = true;
|
||||
CookieSameSite sameSite = "strict";
|
||||
};
|
||||
|
||||
Promise<void> set(USVString name, USVString value, optional CookieStoreSetOptions options);
|
||||
Promise<void> set(CookieStoreSetExtraOptions options);
|
||||
typedef sequence<CookieListItem> CookieList;
|
||||
|
||||
Promise<void> delete(USVString name);
|
||||
Promise<void> delete(CookieStoreDeleteOptions options);
|
||||
[Exposed=(ServiceWorker,Window),
|
||||
SecureContext,
|
||||
Constructor(DOMString type, optional CookieChangeEventInit eventInitDict)]
|
||||
interface CookieChangeEvent : Event {
|
||||
readonly attribute CookieList changed;
|
||||
readonly attribute CookieList deleted;
|
||||
};
|
||||
|
||||
[Exposed=ServiceWorker] Promise<void> subscribeToChanges(sequence<CookieStoreGetOptions> subscriptions);
|
||||
|
||||
[Exposed=ServiceWorker] Promise<sequence<CookieStoreGetOptions>> getChangeSubscriptions();
|
||||
|
||||
[Exposed=Window] attribute EventHandler onchange;
|
||||
dictionary CookieChangeEventInit : EventInit {
|
||||
CookieList changed;
|
||||
CookieList deleted;
|
||||
};
|
||||
|
||||
[SecureContext]
|
||||
|
@ -107,5 +96,6 @@ partial interface Window {
|
|||
|
||||
partial interface ServiceWorkerGlobalScope {
|
||||
[Replaceable, SameObject] readonly attribute CookieStore cookieStore;
|
||||
|
||||
attribute EventHandler oncookiechange;
|
||||
};
|
||||
|
|
|
@ -20,7 +20,7 @@ interface IntersectionObserver {
|
|||
[Constructor(IntersectionObserverEntryInit intersectionObserverEntryInit)]
|
||||
interface IntersectionObserverEntry {
|
||||
readonly attribute DOMHighResTimeStamp time;
|
||||
readonly attribute DOMRectReadOnly rootBounds;
|
||||
readonly attribute DOMRectReadOnly? rootBounds;
|
||||
readonly attribute DOMRectReadOnly boundingClientRect;
|
||||
readonly attribute DOMRectReadOnly intersectionRect;
|
||||
readonly attribute boolean isIntersecting;
|
||||
|
@ -30,7 +30,7 @@ interface IntersectionObserverEntry {
|
|||
|
||||
dictionary IntersectionObserverEntryInit {
|
||||
required DOMHighResTimeStamp time;
|
||||
required DOMRectInit rootBounds;
|
||||
required DOMRectInit? rootBounds;
|
||||
required DOMRectInit boundingClientRect;
|
||||
required DOMRectInit intersectionRect;
|
||||
required boolean isIntersecting;
|
||||
|
|
|
@ -46,7 +46,6 @@ interface CanMakePaymentEvent : ExtendableEvent {
|
|||
readonly attribute USVString topOrigin;
|
||||
readonly attribute USVString paymentRequestOrigin;
|
||||
readonly attribute FrozenArray<PaymentMethodData> methodData;
|
||||
readonly attribute FrozenArray<PaymentDetailsModifier> modifiers;
|
||||
void respondWith(Promise<boolean> canMakePaymentResponse);
|
||||
};
|
||||
|
||||
|
@ -54,7 +53,6 @@ dictionary CanMakePaymentEventInit : ExtendableEventInit {
|
|||
USVString topOrigin;
|
||||
USVString paymentRequestOrigin;
|
||||
sequence<PaymentMethodData> methodData;
|
||||
sequence<PaymentDetailsModifier> modifiers;
|
||||
};
|
||||
|
||||
partial interface ServiceWorkerGlobalScope {
|
||||
|
|
|
@ -197,8 +197,8 @@ interface PaymentMethodChangeEvent : PaymentRequestUpdateEvent {
|
|||
};
|
||||
|
||||
dictionary PaymentMethodChangeEventInit : PaymentRequestUpdateEventInit {
|
||||
required DOMString methodName;
|
||||
object? methodDetails;
|
||||
DOMString methodName = "";
|
||||
object? methodDetails = null;
|
||||
};
|
||||
|
||||
[Constructor(DOMString type, optional PaymentRequestUpdateEventInit eventInitDict), SecureContext, Exposed=Window]
|
||||
|
|
|
@ -41,7 +41,6 @@ partial interface GlobalEventHandlers {
|
|||
attribute EventHandler onlostpointercapture;
|
||||
attribute EventHandler onpointerdown;
|
||||
attribute EventHandler onpointermove;
|
||||
[RuntimeEnabled=PointerRawMove] attribute EventHandler onpointerrawmove;
|
||||
attribute EventHandler onpointerup;
|
||||
attribute EventHandler onpointercancel;
|
||||
attribute EventHandler onpointerover;
|
||||
|
|
|
@ -41,9 +41,9 @@ dictionary ModuleImportDescriptor {
|
|||
|
||||
[LegacyNamespace=WebAssembly, Constructor(BufferSource bytes), Exposed=(Window,Worker,Worklet)]
|
||||
interface Module {
|
||||
static sequence<ModuleExportDescriptor> exports(Module module);
|
||||
static sequence<ModuleImportDescriptor> imports(Module module);
|
||||
static sequence<ArrayBuffer> customSections(Module module, USVString sectionName);
|
||||
static sequence<ModuleExportDescriptor> exports(Module moduleObject);
|
||||
static sequence<ModuleImportDescriptor> imports(Module moduleObject);
|
||||
static sequence<ArrayBuffer> customSections(Module moduleObject, USVString sectionName);
|
||||
};
|
||||
|
||||
[LegacyNamespace=WebAssembly, Constructor(Module module, optional object importObject), Exposed=(Window,Worker,Worklet)]
|
||||
|
@ -87,7 +87,7 @@ dictionary GlobalDescriptor {
|
|||
boolean mutable = false;
|
||||
};
|
||||
|
||||
[LegacyNamespace=WebAssembly, Constructor(GlobalDescriptor descriptor, optional any value), Exposed=(Window,Worker,Worklet)]
|
||||
[LegacyNamespace=WebAssembly, Constructor(GlobalDescriptor descriptor, optional any v), Exposed=(Window,Worker,Worklet)]
|
||||
interface Global {
|
||||
any valueOf();
|
||||
attribute any value;
|
||||
|
|
8
tests/wpt/web-platform-tests/interfaces/webrtc-dscp.idl
Normal file
8
tests/wpt/web-platform-tests/interfaces/webrtc-dscp.idl
Normal file
|
@ -0,0 +1,8 @@
|
|||
// GENERATED CONTENT - DO NOT EDIT
|
||||
// Content was automatically extracted by Reffy into reffy-reports
|
||||
// (https://github.com/tidoust/reffy-reports)
|
||||
// Source: DSCP Control API (https://w3c.github.io/webrtc-dscp-exp/)
|
||||
|
||||
partial dictionary RTCRtpEncodingParameters {
|
||||
RTCPriorityType networkPriority; // Note: No default
|
||||
};
|
|
@ -54,7 +54,7 @@ function testComposedEvent(mode) {
|
|||
|
||||
var expectedPath = ['A1a', 'A1-SR', 'A1', 'A-SR', 'A'];
|
||||
assert_array_equals(log.eventPath, expectedPath);
|
||||
assert_array_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_array_equals(log.pathAtTargets[0], expectedPath);
|
||||
assert_array_equals(log.pathAtTargets[1], expectedPath);
|
||||
assert_array_equals(log.pathAtTargets[2], mode == 'open' ? expectedPath : ['A1', 'A-SR', 'A'],
|
||||
|
@ -82,7 +82,7 @@ function testNonComposedEvent(mode) {
|
|||
|
||||
var expectedPath = ['A1a', 'A1-SR'];
|
||||
assert_array_equals(log.eventPath, expectedPath);
|
||||
assert_array_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_array_equals(log.pathAtTargets[0], expectedPath);
|
||||
assert_array_equals(log.pathAtTargets[1], expectedPath);
|
||||
}, 'The event must not propagate out of ' + mode + ' mode shadow boundaries when the composed flag is unset');
|
||||
|
@ -108,7 +108,7 @@ function testNonComposedEventWithRelatedTarget(mode) {
|
|||
|
||||
var expectedPath = ['A1a', 'A1-SR'];
|
||||
assert_array_equals(log.eventPath, expectedPath);
|
||||
assert_array_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_array_equals(log.pathAtTargets[0], expectedPath);
|
||||
assert_array_equals(log.pathAtTargets[1], expectedPath);
|
||||
assert_array_equals(log.relatedTargets, ['A2-S', 'A2-S']);
|
||||
|
@ -136,7 +136,7 @@ function testScopedEventWithUnscopedRelatedTargetThroughSlot(mode) {
|
|||
var expectedPath = ['B1a', 'B1c-S', 'B1-SR', 'B1', 'B-SR'];
|
||||
var pathExposedToB1a = ['B1a', 'B1', 'B-SR'];
|
||||
assert_array_equals(log.eventPath, expectedPath);
|
||||
assert_array_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_array_equals(log.pathAtTargets[0], mode == 'open' ? expectedPath : pathExposedToB1a);
|
||||
assert_array_equals(log.pathAtTargets[1], expectedPath);
|
||||
assert_array_equals(log.pathAtTargets[2], expectedPath);
|
||||
|
@ -167,7 +167,7 @@ function testComposedEventWithRelatedTarget(mode) {
|
|||
var expectedPath = ['A1a', 'A1-SR', 'A1', 'A-SR'];
|
||||
var pathExposedToA1 = ['A1', 'A-SR'];
|
||||
assert_array_equals(log.eventPath, expectedPath);
|
||||
assert_array_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_array_equals(log.pathAtTargets[0], expectedPath);
|
||||
assert_array_equals(log.pathAtTargets[1], expectedPath);
|
||||
assert_array_equals(log.pathAtTargets[2], mode == 'open' ? expectedPath : pathExposedToA1);
|
||||
|
@ -202,7 +202,7 @@ function testComposedEventThroughSlot(mode) {
|
|||
var pathExposedToA1 = [ 'B', 'A2-S', 'A-SR', 'A'];
|
||||
|
||||
assert_array_equals(log.eventPath, expectedPath);
|
||||
assert_array_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_equals(log.eventPath.length, log.pathAtTargets.length);
|
||||
assert_array_equals(log.pathAtTargets[0], mode == 'open' ? expectedPath : pathExposedToB1a);
|
||||
assert_array_equals(log.pathAtTargets[1], mode == 'open' ? expectedPath : pathExposedToB1cS);
|
||||
assert_array_equals(log.pathAtTargets[2], mode == 'open' ? expectedPath : pathExposedToB1cS);
|
||||
|
|
|
@ -85,12 +85,12 @@ test(function() {
|
|||
assert_equals(doc.querySelectorAll('.bar').length, 1);
|
||||
assert_equals(doc.getElementsByClassName('bar')[0].getAttribute('label'), 'doc-div');
|
||||
|
||||
assert_array_equals(hostOpen.querySelectorAll('.bar').length, 0);
|
||||
assert_equals(hostOpen.querySelectorAll('.bar').length, 0);
|
||||
|
||||
assert_equals(shadowOpen.querySelectorAll('.bar').length, 1);
|
||||
assert_equals(shadowOpen.querySelectorAll('.bar')[0].getAttribute('label'), 'shadow-open-div');
|
||||
|
||||
assert_array_equals(hostClosed.querySelectorAll('.bar').length, 0);
|
||||
assert_equals(hostClosed.querySelectorAll('.bar').length, 0);
|
||||
|
||||
assert_equals(shadowClosed.querySelectorAll('.bar').length, 1);
|
||||
assert_equals(shadowClosed.querySelectorAll('.bar')[0].getAttribute('label'), 'shadow-closed-div');
|
||||
|
@ -106,11 +106,11 @@ test(function() {
|
|||
|
||||
assert_equals(doc.querySelectorAll('[name=baz]').length, 1);
|
||||
|
||||
assert_array_equals(hostOpen.querySelectorAll('[name=baz]').length, 0);
|
||||
assert_equals(hostOpen.querySelectorAll('[name=baz]').length, 0);
|
||||
assert_equals(shadowOpen.querySelectorAll('[name=baz]').length, 1);
|
||||
assert_equals(shadowOpen.querySelectorAll('[name=baz]')[0].getAttribute('label'), 'shadow-open-form');
|
||||
|
||||
assert_array_equals(hostClosed.querySelectorAll('[name=baz]').length, 0);
|
||||
assert_equals(hostClosed.querySelectorAll('[name=baz]').length, 0);
|
||||
assert_equals(shadowClosed.querySelectorAll('[name=baz]').length, 1);
|
||||
assert_equals(shadowClosed.querySelectorAll('[name=baz]')[0].getAttribute('label'), 'shadow-closed-form');
|
||||
}, 'getElementsByName() should not leak nodes in shadow tree');
|
||||
|
@ -126,12 +126,12 @@ test(function() {
|
|||
assert_equals(doc.querySelectorAll('my-element').length, 1);
|
||||
assert_equals(doc.getElementsByTagName('my-element')[0].getAttribute('label'), 'doc-my-element');
|
||||
|
||||
assert_array_equals(hostOpen.querySelectorAll('my-element').length, 0);
|
||||
assert_equals(hostOpen.querySelectorAll('my-element').length, 0);
|
||||
// ShadowRoot isn't an Element, does not have getElementsByTagName().
|
||||
assert_equals(shadowOpen.querySelectorAll('my-element').length, 1);
|
||||
assert_equals(shadowOpen.querySelectorAll('my-element')[0].getAttribute('label'), 'shadow-open-my-element');
|
||||
|
||||
assert_array_equals(hostClosed.querySelectorAll('my-element').length, 0);
|
||||
assert_equals(hostClosed.querySelectorAll('my-element').length, 0);
|
||||
assert_equals(shadowClosed.querySelectorAll('my-element').length, 1);
|
||||
assert_equals(shadowClosed.querySelectorAll('my-element')[0].getAttribute('label'), 'shadow-closed-my-element');
|
||||
}, 'getElementsByTagName() should not leak nodes in shadow tree');
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue