Update web-platform-tests to revision f915dfd69790e7ca09f9bef4eb08cd30163cb3e3

This commit is contained in:
WPT Sync Bot 2019-05-28 10:22:49 +00:00
parent 2ac916b5a1
commit fde011e73d
70 changed files with 1490 additions and 483 deletions

View file

@ -14,6 +14,9 @@
[Revoke blob URL after creating Request, will fetch]
expected: FAIL
[Revoke blob URL after calling fetch, fetch should succeed]
expected: FAIL
[url-with-fetch.any.html]
[Untitled]
@ -34,3 +37,6 @@
[Revoke blob URL after creating Request, will fetch]
expected: FAIL
[Revoke blob URL after calling fetch, fetch should succeed]
expected: FAIL

View file

@ -147105,6 +147105,18 @@
{}
]
],
"css/css-text/text-transform/text-transform-upperlower-044.html": [
[
"css/css-text/text-transform/text-transform-upperlower-044.html",
[
[
"/css/css-text/text-transform/reference/text-transform-upperlower-044-ref.html",
"=="
]
],
{}
]
],
"css/css-text/text-transform/text-transform-upperlower-101.html": [
[
"css/css-text/text-transform/text-transform-upperlower-101.html",
@ -281113,6 +281125,11 @@
{}
]
],
"css/css-text/text-transform/reference/text-transform-upperlower-044-ref.html": [
[
{}
]
],
"css/css-text/text-transform/reference/text-transform-upperlower-101-ref.html": [
[
{}
@ -344718,344 +344735,26 @@
{}
]
],
"IndexedDB/nested-cloning-large-multiple.any.js": [
"IndexedDB/nested-cloning-large-multiple.html": [
[
"IndexedDB/nested-cloning-large-multiple.any.html",
"IndexedDB/nested-cloning-large-multiple.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-large-multiple.any.serviceworker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-large-multiple.any.sharedworker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-large-multiple.any.worker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
]
],
"IndexedDB/nested-cloning-large.any.js": [
"IndexedDB/nested-cloning-large.html": [
[
"IndexedDB/nested-cloning-large.any.html",
"IndexedDB/nested-cloning-large.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-large.any.serviceworker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-large.any.sharedworker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-large.any.worker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: large nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
]
],
"IndexedDB/nested-cloning-small.any.js": [
"IndexedDB/nested-cloning-small.html": [
[
"IndexedDB/nested-cloning-small.any.html",
"IndexedDB/nested-cloning-small.html",
{
"script_metadata": [
[
"title",
"IndexedDB: small nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-small.any.serviceworker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: small nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-small.any.sharedworker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: small nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
],
[
"IndexedDB/nested-cloning-small.any.worker.html",
{
"script_metadata": [
[
"title",
"IndexedDB: small nested objects are cloned correctly"
],
[
"timeout",
"long"
],
[
"script",
"support-promises.js"
],
[
"script",
"nested-cloning-common.js"
],
[
"global",
"window,dedicatedworker,sharedworker,serviceworker"
]
],
"timeout": "long"
}
]
@ -352780,6 +352479,14 @@
}
]
],
"bluetooth/characteristic/writeValue/buffer-is-detached.https.html": [
[
"bluetooth/characteristic/writeValue/buffer-is-detached.https.html",
{
"testdriver": true
}
]
],
"bluetooth/characteristic/writeValue/characteristic-is-removed.https.html": [
[
"bluetooth/characteristic/writeValue/characteristic-is-removed.https.html",
@ -352828,6 +352535,14 @@
}
]
],
"bluetooth/descriptor/writeValue/buffer-is-detached.https.html": [
[
"bluetooth/descriptor/writeValue/buffer-is-detached.https.html",
{
"testdriver": true
}
]
],
"bluetooth/descriptor/writeValue/gen-service-is-removed.https.html": [
[
"bluetooth/descriptor/writeValue/gen-service-is-removed.https.html",
@ -358711,6 +358426,12 @@
{}
]
],
"css/css-backgrounds/parsing/background-attachment-computed.html": [
[
"css/css-backgrounds/parsing/background-attachment-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-attachment-invalid.html": [
[
"css/css-backgrounds/parsing/background-attachment-invalid.html",
@ -358723,6 +358444,12 @@
{}
]
],
"css/css-backgrounds/parsing/background-clip-computed.html": [
[
"css/css-backgrounds/parsing/background-clip-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-clip-invalid.html": [
[
"css/css-backgrounds/parsing/background-clip-invalid.html",
@ -358735,6 +358462,12 @@
{}
]
],
"css/css-backgrounds/parsing/background-color-computed.html": [
[
"css/css-backgrounds/parsing/background-color-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-color-invalid.html": [
[
"css/css-backgrounds/parsing/background-color-invalid.html",
@ -358747,6 +358480,18 @@
{}
]
],
"css/css-backgrounds/parsing/background-computed.html": [
[
"css/css-backgrounds/parsing/background-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-image-computed.html": [
[
"css/css-backgrounds/parsing/background-image-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-image-invalid.html": [
[
"css/css-backgrounds/parsing/background-image-invalid.html",
@ -358765,6 +358510,12 @@
{}
]
],
"css/css-backgrounds/parsing/background-origin-computed.html": [
[
"css/css-backgrounds/parsing/background-origin-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-origin-invalid.html": [
[
"css/css-backgrounds/parsing/background-origin-invalid.html",
@ -358777,6 +358528,12 @@
{}
]
],
"css/css-backgrounds/parsing/background-position-computed.html": [
[
"css/css-backgrounds/parsing/background-position-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-position-invalid.html": [
[
"css/css-backgrounds/parsing/background-position-invalid.html",
@ -358825,6 +358582,12 @@
{}
]
],
"css/css-backgrounds/parsing/background-repeat-computed.html": [
[
"css/css-backgrounds/parsing/background-repeat-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-repeat-invalid.html": [
[
"css/css-backgrounds/parsing/background-repeat-invalid.html",
@ -358837,6 +358600,12 @@
{}
]
],
"css/css-backgrounds/parsing/background-size-computed.html": [
[
"css/css-backgrounds/parsing/background-size-computed.html",
{}
]
],
"css/css-backgrounds/parsing/background-size-invalid.html": [
[
"css/css-backgrounds/parsing/background-size-invalid.html",
@ -362803,6 +362572,60 @@
{}
]
],
"css/css-logical/parsing/border-block-color-computed.html": [
[
"css/css-logical/parsing/border-block-color-computed.html",
{}
]
],
"css/css-logical/parsing/border-block-color-invalid.html": [
[
"css/css-logical/parsing/border-block-color-invalid.html",
{}
]
],
"css/css-logical/parsing/border-block-color-valid.html": [
[
"css/css-logical/parsing/border-block-color-valid.html",
{}
]
],
"css/css-logical/parsing/border-block-style-computed.html": [
[
"css/css-logical/parsing/border-block-style-computed.html",
{}
]
],
"css/css-logical/parsing/border-block-style-invalid.html": [
[
"css/css-logical/parsing/border-block-style-invalid.html",
{}
]
],
"css/css-logical/parsing/border-block-style-valid.html": [
[
"css/css-logical/parsing/border-block-style-valid.html",
{}
]
],
"css/css-logical/parsing/border-block-width-computed.html": [
[
"css/css-logical/parsing/border-block-width-computed.html",
{}
]
],
"css/css-logical/parsing/border-block-width-invalid.html": [
[
"css/css-logical/parsing/border-block-width-invalid.html",
{}
]
],
"css/css-logical/parsing/border-block-width-valid.html": [
[
"css/css-logical/parsing/border-block-width-valid.html",
{}
]
],
"css/css-logical/parsing/inline-size-invalid.html": [
[
"css/css-logical/parsing/inline-size-invalid.html",
@ -397031,6 +396854,12 @@
{}
]
],
"html/semantics/embedded-content/media-elements/track/track-element/track-selection-task-order.html": [
[
"html/semantics/embedded-content/media-elements/track/track-element/track-selection-task-order.html",
{}
]
],
"html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html": [
[
"html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html",
@ -423149,6 +422978,12 @@
{}
]
],
"portals/portal-non-http-navigation.html": [
[
"portals/portal-non-http-navigation.html",
{}
]
],
"portals/portal-onload-event.html": [
[
"portals/portal-onload-event.html",
@ -445578,6 +445413,19 @@
}
]
],
"wake-lock/wakelock-screen-type-on-worker.https.worker.js": [
[
"wake-lock/wakelock-screen-type-on-worker.https.worker.html",
{
"script_metadata": [
[
"title",
"Screen wake lock should not be allowed in dedicated worker"
]
]
}
]
],
"wake-lock/wakelock-supported-by-feature-policy.html": [
[
"wake-lock/wakelock-supported-by-feature-policy.html",
@ -445591,7 +445439,7 @@
"script_metadata": [
[
"title",
"WakeLock.request() with invaild type"
"WakeLock.request() with invalid type"
]
]
}
@ -445602,7 +445450,7 @@
"script_metadata": [
[
"title",
"WakeLock.request() with invaild type"
"WakeLock.request() with invalid type"
]
]
}
@ -488481,16 +488329,16 @@
"db5f710ceb5652ed8b9746f883948fac41262d6b",
"support"
],
"IndexedDB/nested-cloning-large-multiple.any.js": [
"d64df916d801b106759fb0ca2e6547d5686fac8d",
"IndexedDB/nested-cloning-large-multiple.html": [
"f263efbcf6d8f1601e623690ba0de799edce406b",
"testharness"
],
"IndexedDB/nested-cloning-large.any.js": [
"cadfeb04599d2c946037a8a726ea37357fb41172",
"IndexedDB/nested-cloning-large.html": [
"6e4f9be2ee6ce57605ad0248f37f794f6d8a70a2",
"testharness"
],
"IndexedDB/nested-cloning-small.any.js": [
"864752827a9afd1932f1e0978e1cff825af42fb4",
"IndexedDB/nested-cloning-small.html": [
"558415f2342038eb079b4267fdcb0b133fbb9da8",
"testharness"
],
"IndexedDB/objectstore_keyorder.htm": [
@ -492921,6 +492769,10 @@
"d9a9594320d5ec337b5b50ac5f7873e547e4b30a",
"testharness"
],
"bluetooth/characteristic/writeValue/buffer-is-detached.https.html": [
"b8a1abfa5afe3d514d6884b58268dc47cfc15f5e",
"testharness"
],
"bluetooth/characteristic/writeValue/characteristic-is-removed.https.html": [
"f79c21916fba824578eeb20052dba6f86c350adc",
"testharness"
@ -492945,6 +492797,10 @@
"35ff057cbadf12c8d7ada949fe1db07a01450a66",
"testharness"
],
"bluetooth/descriptor/writeValue/buffer-is-detached.https.html": [
"2ab990de61c5603976d3dc915d078a59f11d30a2",
"testharness"
],
"bluetooth/descriptor/writeValue/gen-service-is-removed.https.html": [
"acd56c3aa45723f1019806b15332697e2e04690f",
"testharness"
@ -580661,6 +580517,10 @@
"5ed794153083a7e06eb2e98b7ebdb5bec2676d28",
"visual"
],
"css/css-backgrounds/parsing/background-attachment-computed.html": [
"ceb76c2cdae213b5dad7e1f770590e0b4b054f12",
"testharness"
],
"css/css-backgrounds/parsing/background-attachment-invalid.html": [
"30757f3a4d02a9b1d1fc82c19255804ee2b20ae9",
"testharness"
@ -580669,6 +580529,10 @@
"14d72c606ba52e85d296a5404c2546486765cd42",
"testharness"
],
"css/css-backgrounds/parsing/background-clip-computed.html": [
"9e8b7631bbb37c20fe7bdf5b43206a1e9aa20ce7",
"testharness"
],
"css/css-backgrounds/parsing/background-clip-invalid.html": [
"96831e06fc9cce1c9c45e4d44c83f04d2350d0ab",
"testharness"
@ -580677,14 +580541,26 @@
"e262a788bd0296deb0429fd4fc4257390776680a",
"testharness"
],
"css/css-backgrounds/parsing/background-color-computed.html": [
"7fbeac81a9f328be670c81be4b645e0e37461e91",
"testharness"
],
"css/css-backgrounds/parsing/background-color-invalid.html": [
"b94875402d89839fdb717883f11eff7f880036bf",
"bf315fdb4e49038dae3eb16d3df7308840b51ca3",
"testharness"
],
"css/css-backgrounds/parsing/background-color-valid.html": [
"3859b932c82287c0e103f1a7aebb1ed190b735a0",
"testharness"
],
"css/css-backgrounds/parsing/background-computed.html": [
"cb7d10998e0f46c2553fe161cb215179c4bab4c7",
"testharness"
],
"css/css-backgrounds/parsing/background-image-computed.html": [
"af14f6cf6e8e23de029f7079fe653144218b0ecf",
"testharness"
],
"css/css-backgrounds/parsing/background-image-invalid.html": [
"eaba64a715ce71a9f828569a24df51f1476664dd",
"testharness"
@ -580697,6 +580573,10 @@
"4ea58da801961ba9c8a315ebb0b1de846e16f889",
"testharness"
],
"css/css-backgrounds/parsing/background-origin-computed.html": [
"4e5280135d8d2d5bf3ea73cd92505f78c7e09f52",
"testharness"
],
"css/css-backgrounds/parsing/background-origin-invalid.html": [
"5da00dabe33473254830990c43375ac349eea330",
"testharness"
@ -580705,8 +580585,12 @@
"7e3b0fffcad133948567c5a31b9dcb232891e610",
"testharness"
],
"css/css-backgrounds/parsing/background-position-computed.html": [
"c5e30745f476027170420039873f1911908676df",
"testharness"
],
"css/css-backgrounds/parsing/background-position-invalid.html": [
"bb974afd9f41d8ca4f0ac82db10e57e4bf6d74b7",
"966db4c31a9b1b9d55afbce41ec31bbb98dfc69f",
"testharness"
],
"css/css-backgrounds/parsing/background-position-valid.html": [
@ -580714,7 +580598,7 @@
"testharness"
],
"css/css-backgrounds/parsing/background-position-x-computed.html": [
"6e997c95ae0b632713bed16a84d07c3ac6379d1b",
"f64d2658637ae013997dcdac15d090149304d6df",
"testharness"
],
"css/css-backgrounds/parsing/background-position-x-invalid.html": [
@ -580726,7 +580610,7 @@
"testharness"
],
"css/css-backgrounds/parsing/background-position-y-computed.html": [
"ceff11f624d2d04fdca3201af09023081c3bf759",
"103a26037b7115d09472bd58dc49349e698ef020",
"testharness"
],
"css/css-backgrounds/parsing/background-position-y-invalid.html": [
@ -580737,6 +580621,10 @@
"1413a2e959a4cf00b64fecf06932a083e1480e54",
"testharness"
],
"css/css-backgrounds/parsing/background-repeat-computed.html": [
"f58ab577791a869c837b08c39514d3ee8b17eba6",
"testharness"
],
"css/css-backgrounds/parsing/background-repeat-invalid.html": [
"abb153378f4ce02507d39c5a5a979689df58c8ba",
"testharness"
@ -580745,6 +580633,10 @@
"2f72e03c73332dcf4356796ea3164fe170a21620",
"testharness"
],
"css/css-backgrounds/parsing/background-size-computed.html": [
"01091f541ff3494d9949d620521ea6e91d9d9f97",
"testharness"
],
"css/css-backgrounds/parsing/background-size-invalid.html": [
"01a0322002bc4fecc9c48d2266e39d1c2da3e500",
"testharness"
@ -601097,6 +600989,42 @@
"47170e48f15f90488542daf7ede743cd55f75172",
"testharness"
],
"css/css-logical/parsing/border-block-color-computed.html": [
"dc9e44edb1a11c374074c266c2b0929a5f13580b",
"testharness"
],
"css/css-logical/parsing/border-block-color-invalid.html": [
"1c25f125fe32fe138d4ef1a656c4a249cd981136",
"testharness"
],
"css/css-logical/parsing/border-block-color-valid.html": [
"aefe0f268b0f7a91d46fb40c4b051587de1f2ac7",
"testharness"
],
"css/css-logical/parsing/border-block-style-computed.html": [
"beb3869863ccf016457b03bf4a8c401b7a69c47c",
"testharness"
],
"css/css-logical/parsing/border-block-style-invalid.html": [
"680e510aae6853fc48ad65f2eb3a0fabdb436936",
"testharness"
],
"css/css-logical/parsing/border-block-style-valid.html": [
"860a1052b8346aadbbbf18faf818ab9248f35535",
"testharness"
],
"css/css-logical/parsing/border-block-width-computed.html": [
"3b4d934f8b23b29cd5d7b3aae039ac51ac4ab410",
"testharness"
],
"css/css-logical/parsing/border-block-width-invalid.html": [
"65990fe930d2b8b69a2863d675bbfd993291ce5a",
"testharness"
],
"css/css-logical/parsing/border-block-width-valid.html": [
"98987df9a703ef38d20c6bc1581b2ca136342615",
"testharness"
],
"css/css-logical/parsing/inline-size-invalid.html": [
"d3d5d3f84d9d01392533e787b9e6755d592ec96e",
"testharness"
@ -616858,7 +616786,7 @@
"support"
],
"css/css-text/text-transform/reference/text-transform-upperlower-039-ref.html": [
"0e243edde50eeddae6b52604051ade41194cf447",
"f4fb6804434e02f283fe036e8a110a5652fc8cb3",
"support"
],
"css/css-text/text-transform/reference/text-transform-upperlower-040-ref.html": [
@ -616877,6 +616805,10 @@
"5c5e18c2f7451fb5a236c9fae6344786a65336b3",
"support"
],
"css/css-text/text-transform/reference/text-transform-upperlower-044-ref.html": [
"3eed1edb80e628c28f6a483db4a6980a4b36064e",
"support"
],
"css/css-text/text-transform/reference/text-transform-upperlower-101-ref.html": [
"0105b021d468598eec8e48de849d4764a9e517af",
"support"
@ -617234,7 +617166,7 @@
"reftest"
],
"css/css-text/text-transform/text-transform-upperlower-039.html": [
"40f36e0be3cd440d8f8820e5636455e90b5b9e68",
"470a4f6fb549f29d9a29f43b68df63b304c851e2",
"reftest"
],
"css/css-text/text-transform/text-transform-upperlower-040.html": [
@ -617253,6 +617185,10 @@
"d56f6b3ee3bf1cd0d692d36a782c0040129b31a4",
"reftest"
],
"css/css-text/text-transform/text-transform-upperlower-044.html": [
"6d81c4540a132fc5db5a8361154c3f04f1087f32",
"reftest"
],
"css/css-text/text-transform/text-transform-upperlower-101.html": [
"e4f2ca7d9f510359541f974e4f648c89de6e1561",
"reftest"
@ -671166,7 +671102,7 @@
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-active-cues.html": [
"67ab3bdb138230fa64f0a04c0cc2bd780a23ec65",
"501cf3f92a2796c2685a046829593821d7414b2c",
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-add-remove-cue.html": [
@ -671314,11 +671250,11 @@
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change-error.html": [
"ffc8ec0682dedc522f4713dcf3ba58b31debbb8b",
"dd97d0522d781f685178763df67dbb3145290ca3",
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-element-src-change.html": [
"34a53d153190afe44357d5b53e184050de092b18",
"f3c78668b4ac6862dc60eb9d4f6c30e149fa07af",
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-helpers.js": [
@ -671354,7 +671290,7 @@
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-mode-not-changed-by-new-track.html": [
"2902ba90bc97355bea3902a1a6dcb81d4e4e9e41",
"3ec47a39e2f229e48c3ae14ec6428c88931013a7",
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-mode-triggers-loading.html": [
@ -671397,6 +671333,10 @@
"1f7df3b68232eef2010b7c8df665ec39b68af08e",
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-selection-task-order.html": [
"522d067adfc500a4e773c267c663f331d86c57cc",
"testharness"
],
"html/semantics/embedded-content/media-elements/track/track-element/track-text-track-cue-list.html": [
"5b11bfdea4cf935d96b21505b8681288793ee2c4",
"testharness"
@ -674866,11 +674806,11 @@
"support"
],
"html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener.html": [
"97320090cf039c7352d3f302a42c4bee8765bbd7",
"73eebaff70f09bb98a3b7dd6b59f9357a3ab0668",
"testharness"
],
"html/semantics/links/links-created-by-a-and-area-elements/target_blank_implicit_noopener_base.html": [
"8d1b54baccdfd49403c6d192d4c287d3d8818636",
"3da6a49ef866e7c048461d60b398ad619e72d986",
"testharness"
],
"html/semantics/links/linktypes/alternate-css-ref.html": [
@ -680706,7 +680646,7 @@
"support"
],
"interfaces/mediacapture-streams.idl": [
"427aa92dd1f750f305bccb0b9514820f5bc1d29b",
"c07b7e3301248f4945aacbbbe1a0c84330bbe086",
"support"
],
"interfaces/mediasession.idl": [
@ -680890,7 +680830,7 @@
"support"
],
"interfaces/wake-lock.idl": [
"863cef13f3c39e852920fdf3763848562fe7360c",
"21a3406f5894629ab5838dcf85474043c5138867",
"support"
],
"interfaces/wasm-js-api.idl": [
@ -680918,7 +680858,7 @@
"support"
],
"interfaces/webaudio.idl": [
"4679558023ae87655f46b10d5a57d39269c6e8c9",
"aa137c12f01e0ceee5af4435f38187d19c2acfcb",
"support"
],
"interfaces/webauthn.idl": [
@ -680950,7 +680890,7 @@
"support"
],
"interfaces/webrtc.idl": [
"6ae34167ded31a5927791915eb56bc55f09c59dd",
"4b5d1c1c581869cdfcefab4584c2b05b2dcb1f86",
"support"
],
"interfaces/webusb.idl": [
@ -694309,6 +694249,10 @@
"780e8b58af98cc910e3739e3a9a2e5567d5613d0",
"testharness"
],
"portals/portal-non-http-navigation.html": [
"3b79df3c230e1128574d4a6eb81d407cd9303e2c",
"testharness"
],
"portals/portal-onload-event.html": [
"c9f07fcc889043cd523206728f7daaaefa653409",
"testharness"
@ -720630,7 +720574,7 @@
"support"
],
"tools/wptrunner/wptrunner/browsers/firefox.py": [
"454b08612aaca41e439fc7a9011019e7c4655c26",
"3b6949a42f5df564284eea15cd110e8c1a7763ee",
"support"
],
"tools/wptrunner/wptrunner/browsers/ie.py": [
@ -723465,12 +723409,16 @@
"f32cc3c354354f99852bb198760cdbd9229355a4",
"testharness"
],
"wake-lock/wakelock-screen-type-on-worker.https.worker.js": [
"28e3394279c0b4311a80aad43ced0f9ea79e029f",
"testharness"
],
"wake-lock/wakelock-supported-by-feature-policy.html": [
"d6289fff43c8717ac6e9ace59713e6fd70bd249d",
"testharness"
],
"wake-lock/wakelock-type.https.any.js": [
"26ebcbef557014fe5b5b7d4f4f145ac5f0305a02",
"e11fccc1ddf80320ffdf0bd893e28f30003dabc2",
"testharness"
],
"wasm/META.yml": [
@ -727226,7 +727174,7 @@
"testharness"
],
"webrtc/RTCPeerConnection-addIceCandidate.html": [
"c51c11fccbfae40de733b882503be402cbf7aa7a",
"ed52ace59e60c1ea11285052ab2e1efa17a4d941",
"testharness"
],
"webrtc/RTCPeerConnection-addTrack.https.html": [
@ -735142,7 +735090,7 @@
"testharness"
],
"xhr/responsexml-document-properties.htm": [
"b008348e58f0f8751d9d1b83531e843af8239a6d",
"9071fab121fc8e55d885c4fc89636380b66c226c",
"testharness"
],
"xhr/responsexml-get-twice.htm": [

View file

@ -0,0 +1,4 @@
[buffer-is-detached.https.html]
[writeValue() fails when passed a detached buffer]
expected: FAIL

View file

@ -0,0 +1,4 @@
[buffer-is-detached.https.html]
[writeValue() fails when passed a detached buffer]
expected: FAIL

View file

@ -0,0 +1,2 @@
[bidi-box-model-035.xht]
expected: FAIL

View file

@ -0,0 +1,2 @@
[line-height-068.xht]
expected: TIMEOUT

View file

@ -0,0 +1,4 @@
[background-clip-computed.html]
[Property background-clip value 'border-box, padding-box, content-box' computes to 'border-box']
expected: FAIL

View file

@ -0,0 +1,79 @@
[background-computed.html]
[Property background-position-y value '0.5em' computes to '20px, 20px, 20px']
expected: FAIL
[Property background-position-y value 'calc(10px - 0.5em), -20%, bottom, 15%' computes to '-10px, -20%, 100%']
expected: FAIL
[Property background-position value '12px 13px, 50% 6px, 30px -10px' computes to '12px 13px, 50% 6px, 30px -10px']
expected: FAIL
[Property background-clip value 'content-box, border-box' computes to 'content-box, border-box, content-box']
expected: FAIL
[Property background-repeat value 'round' computes to 'round, round, round']
expected: FAIL
[Property background-attachment value 'local, fixed, scroll' computes to 'local, fixed, scroll']
expected: FAIL
[Property background-repeat value 'repeat-y, round no-repeat, repeat-x, repeat' computes to 'repeat-y, round no-repeat, repeat-x']
expected: FAIL
[Property background-position-x value 'calc(10px - 0.5em), -20%, right, 15%' computes to '-10px, -20%, 100%']
expected: FAIL
[Property background-clip value 'border-box' computes to 'border-box, border-box, border-box']
expected: FAIL
[Property background-attachment value 'local, fixed, scroll, fixed' computes to 'local, fixed, scroll']
expected: FAIL
[Property background-size value 'auto 1px, 2% 3%' computes to 'auto 1px, 2% 3%, auto 1px']
expected: FAIL
[Property background-clip value 'content-box, border-box, padding-box, content-box' computes to 'content-box, border-box, padding-box']
expected: FAIL
[Property background-origin value 'border-box' computes to 'border-box, border-box, border-box']
expected: FAIL
[Property background-position-x value '0.5em' computes to '20px, 20px, 20px']
expected: FAIL
[Property background-position value '12px 13px, 50% 6px, 30px -10px, -7px 8px' computes to '12px 13px, 50% 6px, 30px -10px']
expected: FAIL
[Property background-attachment value 'scroll, fixed' computes to 'scroll, fixed, scroll']
expected: FAIL
[Property background-position-y value '-20%, 10px' computes to '-20%, 10px, -20%']
expected: FAIL
[Property background-repeat value 'repeat-x, repeat' computes to 'repeat-x, repeat, repeat-x']
expected: FAIL
[Property background-position value '50% 6px' computes to '50% 6px, 50% 6px, 50% 6px']
expected: FAIL
[Property background-origin value 'content-box, border-box' computes to 'content-box, border-box, content-box']
expected: FAIL
[Property background-attachment value 'local' computes to 'local, local, local']
expected: FAIL
[Property background-position value '12px 13px, 50% 6px' computes to '12px 13px, 50% 6px, 12px 13px']
expected: FAIL
[Property background-size value 'auto 1px, 2% 3%, contain, 7px 8px' computes to 'auto 1px, 2% 3%, contain']
expected: FAIL
[Property background-position-x value '-20%, 10px' computes to '-20%, 10px, -20%']
expected: FAIL
[Property background-origin value 'content-box, border-box, padding-box, content-box' computes to 'content-box, border-box, padding-box']
expected: FAIL
[Property background-size value 'contain' computes to 'contain, contain, contain']
expected: FAIL

View file

@ -0,0 +1,4 @@
[background-origin-computed.html]
[Property background-origin value 'border-box, padding-box, content-box' computes to 'border-box']
expected: FAIL

View file

@ -0,0 +1,88 @@
[background-position-computed.html]
[Property background-position value '12px 13px, 50% 6px, 30px -10px' computes to '12px 13px']
expected: FAIL
[Property background-position value 'bottom right 19%' computes to '81% 100%']
expected: FAIL
[Property background-position value 'top 17px right -18px' computes to 'calc(100% + 18px) 17px']
expected: FAIL
[Property background-position value 'bottom 16% left' computes to '0% 84%']
expected: FAIL
[Property background-position value 'bottom center' computes to '50% 100%']
expected: FAIL
[Property background-position value 'right 9%' computes to '100% 9%']
expected: FAIL
[Property background-position value 'bottom' computes to '50% 100%']
expected: FAIL
[Property background-position value 'center left' computes to '0% 50%']
expected: FAIL
[Property background-position value '-2% -3%' computes to '-2% -3%']
expected: FAIL
[Property background-position value 'center top 8px' computes to '50% 8px']
expected: FAIL
[Property background-position value '1px center' computes to '1px 50%']
expected: FAIL
[Property background-position value 'center' computes to '50% 50%']
expected: FAIL
[Property background-position value '1px' computes to '1px 50%']
expected: FAIL
[Property background-position value 'left' computes to '0% 50%']
expected: FAIL
[Property background-position value 'center 6px' computes to '50% 6px']
expected: FAIL
[Property background-position value 'right 11% bottom' computes to '89% 100%']
expected: FAIL
[Property background-position value '5% top' computes to '5% 0%']
expected: FAIL
[Property background-position value 'calc(10px + 0.5em) calc(10px - 0.5em)' computes to '30px -10px']
expected: FAIL
[Property background-position value 'center center' computes to '50% 50%']
expected: FAIL
[Property background-position value 'right center' computes to '100% 50%']
expected: FAIL
[Property background-position value 'center bottom' computes to '50% 100%']
expected: FAIL
[Property background-position value 'left bottom' computes to '0% 100%']
expected: FAIL
[Property background-position value 'top left' computes to '0% 0%']
expected: FAIL
[Property background-position value 'left 10px center' computes to '10px 50%']
expected: FAIL
[Property background-position value 'top 15px center' computes to '50% 15px']
expected: FAIL
[Property background-position value 'left 12px top 13px' computes to '12px 13px']
expected: FAIL
[Property background-position value 'right top 14%' computes to '100% 14%']
expected: FAIL
[Property background-position value 'center right 7%' computes to '93% 50%']
expected: FAIL
[Property background-position value 'calc(10px - 0.5em) calc(10px + 0.5em)' computes to '-10px 30px']
expected: FAIL

View file

@ -17,3 +17,18 @@
[Property background-position-x value 'x-end' computes to 'x-end']
expected: FAIL
[Property background-position-x value 'calc(10px - 0.5em), -20%, 10px' computes to '-10px']
expected: FAIL
[Property background-position-x value 'calc(10px - 0.5em), left -20%, right 10px' computes to '-10px']
expected: FAIL
[Property background-position-x value '-20%, 10px' computes to '-20%']
expected: FAIL
[Property background-position-x value 'center, left, right' computes to '50%']
expected: FAIL
[Property background-position-x value '0.5em, x-start, x-end' computes to '20px']
expected: FAIL

View file

@ -17,3 +17,18 @@
[Property background-position-y value 'y-start' computes to 'y-start']
expected: FAIL
[Property background-position-y value '0.5em, y-start, y-end' computes to '20px']
expected: FAIL
[Property background-position-y value '-20%, 10px' computes to '-20%']
expected: FAIL
[Property background-position-y value 'center, top, bottom' computes to '50%']
expected: FAIL
[Property background-position-y value 'calc(10px - 0.5em), top -20%, bottom 10px' computes to '-10px']
expected: FAIL
[Property background-position-y value 'calc(10px - 0.5em), -20%, 10px' computes to '-10px']
expected: FAIL

View file

@ -0,0 +1,4 @@
[background-repeat-computed.html]
[Property background-repeat value 'repeat-x, repeat-y, repeat' computes to 'repeat-x']
expected: FAIL

View file

@ -0,0 +1,10 @@
[background-size-computed.html]
[Property background-size value '1px' computes to '1px']
expected: FAIL
[Property background-size value 'auto 1px, 2% 3%, contain' computes to 'auto 1px']
expected: FAIL
[Property background-size value '1px auto' computes to '1px']
expected: FAIL

View file

@ -0,0 +1,2 @@
[text-transform-upperlower-044.html]
expected: FAIL

View file

@ -312,21 +312,21 @@
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
expected: FAIL
[<iframe>: separate response Content-Type: text/html;charset=gbk text/plain text/html]
expected: FAIL
[<iframe>: separate response Content-Type: */* text/html]
expected: FAIL
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
expected: FAIL
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
expected: FAIL
[<iframe>: separate response Content-Type: text/html */*]
expected: FAIL
[<iframe>: combined response Content-Type: text/html;x=" text/plain]
expected: FAIL
[<iframe>: combined response Content-Type: */* text/html]
expected: FAIL
[<iframe>: combined response Content-Type: text/html;charset=gbk text/plain text/html]
expected: FAIL
[<iframe>: separate response Content-Type: text/html;" text/plain]
expected: FAIL
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
expected: FAIL
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
expected: FAIL

View file

@ -14,6 +14,3 @@
[X-Content-Type-Options%3A%20'NosniFF']
expected: FAIL
[X-Content-Type-Options%3A%20%2Cnosniff]
expected: FAIL

View file

@ -1,4 +0,0 @@
[traverse_the_history_4.html]
[Multiple history traversals, last would be aborted]
expected: FAIL

View file

@ -1,4 +0,0 @@
[traverse_the_history_5.html]
[Multiple history traversals, last would be aborted]
expected: FAIL

View file

@ -0,0 +1,5 @@
[track-selection-task-order.html]
expected: TIMEOUT
[HTMLTrackElement Text Track Selection Task Order]
expected: TIMEOUT

View file

@ -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

View file

@ -1,4 +0,0 @@
[paint_timing.html]
[Performance entries observer]
expected: FAIL

View file

@ -1,9 +1,14 @@
// META: title=IndexedDB: large nested objects are cloned correctly
// META: timeout=long
// META: script=support-promises.js
// META: script=nested-cloning-common.js
// META: global=window,dedicatedworker,sharedworker,serviceworker
'use strict';
<!doctype html>
<meta charset="utf8">
<meta name="timeout" content="long">
<title>IndexedDB: large nested objects are cloned correctly</title>
<link rel="help" href="https://w3c.github.io/IndexedDB/#abort-transaction">
<link rel="author" href="pwnall@chromium.org" title="Victor Costan">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="support-promises.js"></script>
<script src="nested-cloning-common.js"></script>
<script>
cloningTestWithKeyGenerator(
'multiple requests of objects with blobs and large typed arrays', [
@ -45,3 +50,5 @@ cloningTestWithKeyGenerator(
{ type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink20', seed: 20 },
],
]);
</script>

View file

@ -1,9 +1,14 @@
// META: title=IndexedDB: large nested objects are cloned correctly
// META: timeout=long
// META: script=support-promises.js
// META: script=nested-cloning-common.js
// META: global=window,dedicatedworker,sharedworker,serviceworker
'use strict';
<!doctype html>
<meta charset="utf8">
<meta name="timeout" content="long">
<title>IndexedDB: large nested objects are cloned correctly</title>
<link rel="help" href="https://w3c.github.io/IndexedDB/#abort-transaction">
<link rel="author" href="pwnall@chromium.org" title="Victor Costan">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="support-promises.js"></script>
<script src="nested-cloning-common.js"></script>
<script>
cloningTest('large typed array', [
{ type: 'buffer', size: wrapThreshold, seed: 1 },
@ -40,3 +45,5 @@ cloningTestWithKeyGenerator('object with blobs and large typed arrays', [
seed: 5 },
},
]);
</script>

View file

@ -1,9 +1,14 @@
// META: title=IndexedDB: small nested objects are cloned correctly
// META: timeout=long
// META: script=support-promises.js
// META: script=nested-cloning-common.js
// META: global=window,dedicatedworker,sharedworker,serviceworker
'use strict';
<!doctype html>
<meta charset="utf8">
<meta name="timeout" content="long">
<title>IndexedDB: small nested objects are cloned correctly</title>
<link rel="help" href="https://w3c.github.io/IndexedDB/#abort-transaction">
<link rel="author" href="pwnall@chromium.org" title="Victor Costan">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="support-promises.js"></script>
<script src="nested-cloning-common.js"></script>
<script>
cloningTest('small typed array', [
{ type: 'buffer', size: 64, seed: 1 },
@ -37,4 +42,6 @@ cloningTestWithKeyGenerator('array of blobs and small typed arrays', [
{ type: 'buffer', size: 64, seed: 4 },
{ type: 'blob', size: wrapThreshold, mimeType: 'text/x-blink-05', seed: 5 },
],
]);
]);
</script>

View file

@ -0,0 +1,28 @@
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="/bluetooth/resources/bluetooth-helpers.js"></script>
<script>
'use strict';
function detachBuffer(buffer) {
window.postMessage('', '*', [buffer]);
}
bluetooth_test(async (t) => {
let {characteristic, fake_characteristic} =
await getMeasurementIntervalCharacteristic();
let typed_array = Uint8Array.of(1, 2);
detachBuffer(typed_array.buffer);
await promise_rejects(
t, 'InvalidStateError', characteristic.writeValue(typed_array));
let array_buffer = Uint8Array.of(3, 4).buffer;
detachBuffer(array_buffer);
await promise_rejects(
t, 'InvalidStateError', characteristic.writeValue(array_buffer));
}, 'writeValue() fails when passed a detached buffer');
</script>

View file

@ -0,0 +1,28 @@
<!DOCTYPE html>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/resources/testdriver.js"></script>
<script src="/resources/testdriver-vendor.js"></script>
<script src="/bluetooth/resources/bluetooth-helpers.js"></script>
<script>
'use strict';
function detachBuffer(buffer) {
window.postMessage('', '*', [buffer]);
}
bluetooth_test(async (t) => {
let {descriptor, fake_descriptor} =
await getUserDescriptionDescriptor();
let typed_array = Uint8Array.of(1, 2);
detachBuffer(typed_array.buffer);
await promise_rejects(
t, 'InvalidStateError', descriptor.writeValue(typed_array));
let array_buffer = Uint8Array.of(3, 4).buffer;
detachBuffer(array_buffer);
await promise_rejects(
t, 'InvalidStateError', descriptor.writeValue(array_buffer));
}, 'writeValue() fails when passed a detached buffer');
</script>

View file

@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundAttachment</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-attachment">
<meta name="assert" content="background-attachment computed value is as specified.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-attachment", "fixed");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-attachment", "scroll, fixed, local", "scroll");
</script>
</body>
</html>

View file

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundClip</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-clip">
<meta name="assert" content="background-clip computed value is as specified.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-clip", "border-box");
test_computed_value("background-clip", "padding-box");
test_computed_value("background-clip", "content-box");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-clip", "border-box, padding-box, content-box", "border-box");
</script>
</body>
</html>

View file

@ -0,0 +1,30 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundColor</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-color">
<meta name="assert" content="background-color computed value is a computed color.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
<style>
#target {
color: lime;
}
</style>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-color", "currentcolor", "rgb(0, 255, 0)");
test_computed_value("background-color", "red", "rgb(255, 0, 0)");
test_computed_value("background-color", "#00FF00", "rgb(0, 255, 0)");
test_computed_value("background-color", "rgb(0, 0, 255)");
test_computed_value("background-color", "rgb(100%, 100%, 0%)", "rgb(255, 255, 0)");
test_computed_value("background-color", "hsl(120, 100%, 50%)", "rgb(0, 255, 0)");
test_computed_value("background-color", "transparent", "rgba(0, 0, 0, 0)");
</script>
</body>
</html>

View file

@ -14,6 +14,7 @@
<script>
test_invalid_value("background-color", "none");
test_invalid_value("background-color", "black white");
test_invalid_value("background-color", "black, white");
</script>
</body>
</html>

View file

@ -0,0 +1,70 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().background with multiple layers</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background">
<meta name="assert" content="The number of layers is determined by the number of comma-separated values in the background-image property. .">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
<style>
#target {
background-image: none, none, none;
font-size: 40px;
}
</style>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-attachment", "local", "local, local, local");
test_computed_value("background-attachment", "scroll, fixed", "scroll, fixed, scroll");
test_computed_value("background-attachment", "local, fixed, scroll");
test_computed_value("background-attachment", "local, fixed, scroll, fixed", "local, fixed, scroll");
test_computed_value("background-clip", "border-box", "border-box, border-box, border-box");
test_computed_value("background-clip", "content-box, border-box", "content-box, border-box, content-box");
test_computed_value("background-clip", "border-box, padding-box, content-box");
test_computed_value("background-clip", "content-box, border-box, padding-box, content-box", "content-box, border-box, padding-box");
// background-color always computes as a single color.
test_computed_value("background-color", "rgb(255, 0, 0)");
test_computed_value("background-origin", "border-box", "border-box, border-box, border-box");
test_computed_value("background-origin", "content-box, border-box", "content-box, border-box, content-box");
test_computed_value("background-origin", "border-box, padding-box, content-box");
test_computed_value("background-origin", "content-box, border-box, padding-box, content-box", "content-box, border-box, padding-box");
test_computed_value("background-position", "50% 6px", "50% 6px, 50% 6px, 50% 6px");
test_computed_value("background-position", "12px 13px, 50% 6px", "12px 13px, 50% 6px, 12px 13px");
test_computed_value("background-position", "12px 13px, 50% 6px, 30px -10px");
test_computed_value("background-position", "12px 13px, 50% 6px, 30px -10px, -7px 8px", "12px 13px, 50% 6px, 30px -10px");
test_computed_value("background-position-x", "0.5em", "20px, 20px, 20px");
test_computed_value("background-position-x", "-20%, 10px", "-20%, 10px, -20%");
test_computed_value("background-position-x", "center, left, right", "50%, 0%, 100%");
test_computed_value("background-position-x", "calc(10px - 0.5em), -20%, right, 15%", "-10px, -20%, 100%");
test_computed_value("background-position-y", "0.5em", "20px, 20px, 20px");
test_computed_value("background-position-y", "-20%, 10px", "-20%, 10px, -20%");
test_computed_value("background-position-y", "center, top, bottom", "50%, 0%, 100%");
test_computed_value("background-position-y", "calc(10px - 0.5em), -20%, bottom, 15%", "-10px, -20%, 100%");
test_computed_value("background-repeat", "round", "round, round, round");
test_computed_value("background-repeat", "repeat-x, repeat", "repeat-x, repeat, repeat-x");
test_computed_value("background-repeat", "repeat space, round no-repeat, repeat-x");
test_computed_value("background-repeat", "repeat-y, round no-repeat, repeat-x, repeat", "repeat-y, round no-repeat, repeat-x");
test_computed_value("background-size", "contain", "contain, contain, contain");
test_computed_value("background-size", "auto 1px, 2% 3%", "auto 1px, 2% 3%, auto 1px");
test_computed_value("background-size", "auto 1px, 2% 3%, contain");
test_computed_value("background-size", "auto 1px, 2% 3%, contain, 7px 8px", "auto 1px, 2% 3%, contain");
// Open issue: Define serialization for background shorthand
// https://github.com/w3c/csswg-drafts/issues/418
// test_computed_value("background", "rgb(1, 2, 3) none 4px 5px / 6px 7px repeat space scroll border-box padding-box");
</script>
</body>
</html>

View file

@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundImage</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-image">
<meta name="assert" content="background-image computed value is as specified.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-image", "none");
test_computed_value("background-image", 'url("http://www.example.com/")');
test_computed_value("background-image", 'none, url("http://www.example.com/")');
</script>
</body>
</html>

View file

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundOrigin</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-origin">
<meta name="assert" content="background-origin computed value is as specified.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-origin", "border-box");
test_computed_value("background-origin", "padding-box");
test_computed_value("background-origin", "content-box");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-origin", "border-box, padding-box, content-box", "border-box");
</script>
</body>
</html>

View file

@ -0,0 +1,53 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundPosition</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-position">
<meta name="assert" content="background-position computed value is a list, each item a pair of offsets (horizontal and vertical) from the top left origin each given as a computed <length-percentage> value.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
<style>
#target {
font-size: 40px;
}
</style>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-position", "1px", "1px 50%");
test_computed_value("background-position", "1px center", "1px 50%");
test_computed_value("background-position", "-2% -3%");
test_computed_value("background-position", "5% top", "5% 0%");
test_computed_value("background-position", "center", "50% 50%");
test_computed_value("background-position", "center center", "50% 50%");
test_computed_value("background-position", "center 6px", "50% 6px");
test_computed_value("background-position", "center left", "0% 50%");
test_computed_value("background-position", "center right 7%", "93% 50%");
test_computed_value("background-position", "center bottom", "50% 100%");
test_computed_value("background-position", "center top 8px", "50% 8px");
test_computed_value("background-position", "left", "0% 50%");
test_computed_value("background-position", "right 9%", "100% 9%");
test_computed_value("background-position", "left 10px center", "10px 50%");
test_computed_value("background-position", "right 11% bottom", "89% 100%");
test_computed_value("background-position", "left 12px top 13px", "12px 13px");
test_computed_value("background-position", "right center", "100% 50%");
test_computed_value("background-position", "left bottom", "0% 100%");
test_computed_value("background-position", "right top 14%", "100% 14%");
test_computed_value("background-position", "bottom", "50% 100%");
test_computed_value("background-position", "top 15px center", "50% 15px");
test_computed_value("background-position", "bottom 16% left", "0% 84%");
test_computed_value("background-position", "top 17px right -18px", "calc(100% + 18px) 17px");
test_computed_value("background-position", "bottom center", "50% 100%");
test_computed_value("background-position", "top left", "0% 0%");
test_computed_value("background-position", "bottom right 19%", "81% 100%");
test_computed_value("background-position", "calc(10px + 0.5em) calc(10px - 0.5em)", "30px -10px");
test_computed_value("background-position", "calc(10px - 0.5em) calc(10px + 0.5em)", "-10px 30px");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-position", "12px 13px, 50% 6px, 30px -10px", "12px 13px");
</script>
</body>
</html>

View file

@ -15,6 +15,14 @@
test_invalid_value("background-position", "left right");
test_invalid_value("background-position", "top bottom");
test_invalid_value("background-position", "1% center 2px");
test_invalid_value("background-position", "right 7% 50%");
test_invalid_value("background-position", "50% top 8px");
test_invalid_value("background-position", "left 10px 50%");
test_invalid_value("background-position", "right 11% 100%");
test_invalid_value("background-position", "100% top 14%");
test_invalid_value("background-position", "50% top 15px");
test_invalid_value("background-position", "0% bottom 16%");
test_invalid_value("background-position", "right 19% 100%");
</script>
</body>
</html>

View file

@ -26,11 +26,14 @@ test_computed_value("background-position-x", "10px");
test_computed_value("background-position-x", "0.5em", "20px");
test_computed_value("background-position-x", "calc(10px - 0.5em)", "-10px");
test_computed_value("background-position-x", "left -20%", "-20%");
test_computed_value("background-position-x", "right 10px", "calc(100% + 10px)");
test_computed_value("background-position-x", "-20%, 10px");
test_computed_value("background-position-x", "center, left, right", "50%, 0%, 100px");
test_computed_value("background-position-x", "0.5em, x-start, x-end", "20px, x-start, x-end");
test_computed_value("background-position-x", "calc(10px - 0.5em), left -20%, right 10px", "-10px, -20%, calc(100% + 10px)");
test_computed_value("background-position-x", "right -10px", "calc(100% + 10px)");
test_computed_value("background-position-x", "-20%, 10px", "-20%");
test_computed_value("background-position-x", "center, left, right", "50%");
test_computed_value("background-position-x", "0.5em, x-start, x-end", "20px");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-position-x", "calc(10px - 0.5em), -20%, 10px", "-10px");
test_computed_value("background-position-x", "calc(10px - 0.5em), left -20%, right 10px", "-10px");
</script>
</body>
</html>

View file

@ -26,11 +26,14 @@ test_computed_value("background-position-y", "10px");
test_computed_value("background-position-y", "0.5em", "20px");
test_computed_value("background-position-y", "calc(10px - 0.5em)", "-10px");
test_computed_value("background-position-y", "top -20%", "-20%");
test_computed_value("background-position-y", "bottom 10px", "calc(100% + 10px)");
test_computed_value("background-position-y", "-20%, 10px");
test_computed_value("background-position-y", "center, top, bottom", "50%, 0%, 100px");
test_computed_value("background-position-y", "0.5em, y-start, y-end", "20px, y-start, y-end");
test_computed_value("background-position-y", "calc(10px - 0.5em), top -20%, bottom 10px", "-10px, -20%, calc(100% + 10px)");
test_computed_value("background-position-y", "bottom -10px", "calc(100% + 10px)");
test_computed_value("background-position-y", "-20%, 10px", "-20%");
test_computed_value("background-position-y", "center, top, bottom", "50%");
test_computed_value("background-position-y", "0.5em, y-start, y-end", "20px");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-position-y", "calc(10px - 0.5em), -20%, 10px", "-10px");
test_computed_value("background-position-y", "calc(10px - 0.5em), top -20%, bottom 10px", "-10px");
</script>
</body>
</html>

View file

@ -0,0 +1,30 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundRepeat</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-repeat">
<meta name="assert" content="background-attachment repeat value is as specified.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-repeat", "repeat-x");
test_computed_value("background-repeat", "repeat-y");
test_computed_value("background-repeat", "repeat");
test_computed_value("background-repeat", "space");
test_computed_value("background-repeat", "round");
test_computed_value("background-repeat", "no-repeat");
test_computed_value("background-repeat", "repeat space");
test_computed_value("background-repeat", "round no-repeat");
test_computed_value("background-repeat", "repeat repeat", "repeat");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-repeat", "repeat-x, repeat-y, repeat", "repeat-x");
</script>
</body>
</html>

View file

@ -0,0 +1,35 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Backgrounds and Borders: getComputedValue().backgroundSize</title>
<link rel="help" href="https://drafts.csswg.org/css-backgrounds/#background-size">
<meta name="assert" content="background-size computed value is a list, each item a pair of sizes (one per axis) each represented as either a keyword or a computed length-percentage value.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
<style>
#target {
font-size: 40px;
}
</style>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("background-size", "1px", "1px");
test_computed_value("background-size", "1px auto", "1px");
test_computed_value("background-size", "2% 3%");
test_computed_value("background-size", "auto");
test_computed_value("background-size", "auto auto", "auto");
test_computed_value("background-size", "auto 4%");
test_computed_value("background-size", "contain");
test_computed_value("background-size", "cover");
test_computed_value("background-size", "calc(10px + 0.5em) calc(10px - 0.5em)", "30px 0px");
test_computed_value("background-size", "calc(10px - 0.5em) calc(10px + 0.5em)", "0px 30px");
// See background-computed.html for a test with multiple background images.
test_computed_value("background-size", "auto 1px, 2% 3%, contain", "auto 1px");
</script>
</body>
</html>

View file

@ -0,0 +1,31 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: getComputedValue().borderBlockColor</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-color">
<meta name="assert" content="border-block-color is computed color(s).">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="box"></div>
<div id="target"></div>
<style>
#target {
color: lime;
}
</style>
<script>
test_computed_value("border-block-start-color", "currentcolor", 'rgb(0, 255, 0)');
test_computed_value("border-block-start-color", "rgb(2, 3, 4)");
test_computed_value("border-block-end-color", "rgb(34, 51, 68)");
test_computed_value("border-block-end-color", "transparent", "rgba(0, 0, 0, 0)");
test_computed_value("border-block-color", "rgb(34, 51, 68)");
test_computed_value("border-block-color", "transparent rgb(2, 3, 4)", "rgba(0, 0, 0, 0) rgb(2, 3, 4)");
test_computed_value("border-block-color", "rgb(2, 3, 4) rgb(2, 3, 4)", "rgb(2, 3, 4)");
test_computed_value("border-block-color", "currentcolor lime", 'rgb(0, 255, 0)');
</script>
</body>
</html>

View file

@ -0,0 +1,31 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing border-block-color with invalid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-color">
<meta name="assert" content="border-block-color supports only the grammar '<color>{1,2}'.">
<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("border-block-start-color", "#12");
test_invalid_value("border-block-start-color", "auto");
test_invalid_value("border-block-start-color", "red green");
test_invalid_value("border-block-start-color", "rgb");
test_invalid_value("border-block-start-color", "rgb(1,2,3,4,5)");
test_invalid_value("border-block-start-color", "rgb(10%, 20, 30%)");
test_invalid_value("border-block-end-color", "#123456789");
test_invalid_value("border-block-end-color", "123");
test_invalid_value("border-block-end-color", "hsla(1,2,3,4,5)");
test_invalid_value("border-block-end-color", "red, green");
test_invalid_value("border-block-end-color", "rgb(1)");
test_invalid_value("border-block-end-color", "rgba(-2, 300, 400%, -0.5)");
test_invalid_value("border-block-color", "auto");
test_invalid_value("border-block-color", "lime, transparent");
test_invalid_value("border-block-color", "red green blue");
</script>
</body>
</html>

View file

@ -0,0 +1,23 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing border-block-color with valid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-color">
<meta name="assert" content="border-block-color supports the full grammar '<color>{1,2}'.">
<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("border-block-start-color", "currentcolor");
test_valid_value("border-block-start-color", "rgb(2, 3, 4)");
test_valid_value("border-block-end-color", "#234", "rgb(34, 51, 68)");
test_valid_value("border-block-end-color", "transparent");
test_valid_value("border-block-color", "#234", "rgb(34, 51, 68)");
test_valid_value("border-block-color", "transparent rgb(2, 3, 4)");
test_valid_value("border-block-color", "rgb(2, 3, 4) rgb(2, 3, 4)", "rgb(2, 3, 4)");
</script>
</body>
</html>

View file

@ -0,0 +1,30 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: getComputedValue().borderBlockStyle</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-style">
<meta name="assert" content="border-block-style is specified keyword(s).">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="target"></div>
<script>
test_computed_value("border-block-start-style", "dotted");
test_computed_value("border-block-start-style", "groove");
test_computed_value("border-block-start-style", "inset");
test_computed_value("border-block-start-style", "none");
test_computed_value("border-block-start-style", "solid");
test_computed_value("border-block-end-style", "dashed");
test_computed_value("border-block-end-style", "double");
test_computed_value("border-block-end-style", "hidden");
test_computed_value("border-block-end-style", "outset");
test_computed_value("border-block-end-style", "ridge");
test_computed_value("border-block-style", "dotted");
test_computed_value("border-block-style", "double groove");
test_computed_value("border-block-style", "hidden hidden", "hidden");
</script>
</body>
</html>

View file

@ -0,0 +1,22 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing border-block-style with invalid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-style">
<meta name="assert" content="border-block-style supports only the grammar '<line-style>{1,2}'.">
<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("border-block-start-style", "auto");
test_invalid_value("border-block-start-style", "hidden, outset");
test_invalid_value("border-block-end-style", "solid double");
test_invalid_value("border-block-style", "auto");
test_invalid_value("border-block-style", "groove, ridge");
test_invalid_value("border-block-style", "hidden inset dashed");
</script>
</body>
</html>

View file

@ -0,0 +1,30 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing border-block-style with valid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block">
<meta name="assert" content="border-block-style supports the full grammar '<line-style>{1,2}'.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
// none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset
test_valid_value("border-block-start-style", "dotted");
test_valid_value("border-block-start-style", "groove");
test_valid_value("border-block-start-style", "inset");
test_valid_value("border-block-start-style", "none");
test_valid_value("border-block-start-style", "solid");
test_valid_value("border-block-end-style", "dashed");
test_valid_value("border-block-end-style", "double");
test_valid_value("border-block-end-style", "hidden");
test_valid_value("border-block-end-style", "outset");
test_valid_value("border-block-end-style", "ridge");
test_valid_value("border-block-style", "dotted");
test_valid_value("border-block-style", "double groove");
test_valid_value("border-block-style", "hidden hidden", "hidden");
</script>
</body>
</html>

View file

@ -0,0 +1,76 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: getComputedValue().borderBlockWidth</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-width">
<meta name="assert" content="border-block-width is absolute length; zero if the border block style is none or hidden.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/computed-testcommon.js"></script>
</head>
<body>
<div id="box"></div>
<div id="target"></div>
<style>
#box {
border-style: dotted; /* Avoid border-*-width computed style 0 */
border-top-width: thin;
border-right-width: medium;
border-bottom-width: thick;
}
#target {
font-size: 40px;
border-block-style: dotted; /* Avoid border-block-*-width computed style 0 */
}
</style>
<script>
'use strict';
const box = document.getElementById('box');
const thinWidth = getComputedStyle(box).borderTopWidth;
const mediumWidth = getComputedStyle(box).borderRightWidth;
const thickWidth = getComputedStyle(box).borderBottomWidth;
test_computed_value("border-block-start-width", "calc(10px + 0.5em)", "30px");
test_computed_value("border-block-start-width", "calc(10px - 0.5em)", "0px");
test_computed_value("border-block-start-width", "thin", thinWidth);
test_computed_value("border-block-start-width", "medium", mediumWidth);
test_computed_value("border-block-end-width", "calc(10px + 0.5em)", "30px");
test_computed_value("border-block-end-width", "calc(10px - 0.5em)", "0px");
test_computed_value("border-block-end-width", "thick", thickWidth);
test_computed_value("border-block-width", "10px");
test_computed_value("border-block-width", "10px 20px");
test_computed_value("border-block-width", "10px 10px", "10px");
test(() => {
box.style.borderBlockStartWidth = '10px';
box.style.borderBlockEndWidth = '10px';
box.style.borderBlockStartStyle = 'groove';
box.style.borderBlockEndStyle = 'solid';
assert_equals(getComputedStyle(box).borderBlockStartWidth, '10px');
assert_equals(getComputedStyle(box).borderBlockEndWidth, '10px');
assert_equals(getComputedStyle(box).borderBlockWidth, '10px');
box.style.borderBlockStartStyle = 'hidden';
box.style.borderBlockEndStyle = 'dashed';
assert_equals(getComputedStyle(box).borderBlockStartWidth, '0px');
assert_equals(getComputedStyle(box).borderBlockEndWidth, '10px');
assert_equals(getComputedStyle(box).borderBlockWidth, '0px 10px');
box.style.borderBlockStartStyle = 'inset';
box.style.borderBlockEndStyle = 'none';
assert_equals(getComputedStyle(box).borderBlockStartWidth, '10px');
assert_equals(getComputedStyle(box).borderBlockEndWidth, '0px');
assert_equals(getComputedStyle(box).borderBlockWidth, '10px 0px');
box.style.borderBlockStartStyle = 'none';
box.style.borderBlockEndStyle = 'hidden';
assert_equals(getComputedStyle(box).borderBlockStartWidth, '0px');
assert_equals(getComputedStyle(box).borderBlockEndWidth, '0px');
assert_equals(getComputedStyle(box).borderBlockWidth, '0px');
}, 'width is zero if the border block style is none or hidden');
</script>
</body>
</html>

View file

@ -0,0 +1,25 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing border-block-width with invalid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-width">
<meta name="assert" content="border-block-width supports only the grammar '<line-width>{1,2}'.">
<meta name="assert" content="Negative lengths are not allowed.">
<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("border-block-start-width", "-20px");
test_invalid_value("border-block-start-width", "auto");
test_invalid_value("border-block-start-width", "medium 40px");
test_invalid_value("border-block-end-width", "10");
test_invalid_value("border-block-end-width", "30%");
test_invalid_value("border-block-width", "thick, thin");
test_invalid_value("border-block-width", "10px 20px 30px");
</script>
</body>
</html>

View file

@ -0,0 +1,27 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>CSS Logical Properties and Values: parsing border-block-width with valid values</title>
<link rel="help" href="https://drafts.csswg.org/css-logical/#propdef-border-block-width">
<meta name="assert" content="border-block-width supports the full grammar '<line-width>{1,2}'.">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/css/support/parsing-testcommon.js"></script>
</head>
<body>
<script>
// <length> | thin | medium | thick
test_valid_value("border-block-start-width", "10px");
test_valid_value("border-block-start-width", "calc(10px + 0.5em)");
test_valid_value("border-block-start-width", "thick");
test_valid_value("border-block-start-width", "thin");
test_valid_value("border-block-end-width", "0", "0px");
test_valid_value("border-block-end-width", "calc(10px - 0.5em)");
test_valid_value("border-block-end-width", "medium");
test_valid_value("border-block-width", "10px");
test_valid_value("border-block-width", "medium calc(10px + 0.5em)");
test_valid_value("border-block-width", "10px 10px", "10px");
</script>
</body>
</html>

View file

@ -17,7 +17,10 @@
</head>
<body>
<p class="instructions">Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.</p>
<div class="test" lang="lt"><span>&#x69;&#x307;&#x300; &#x69;&#x307;&#x300;</span> <span>&#x69;&#x307;&#x301; &#x69;&#x307;&#x301;</span> <span>&#x69;&#x307;&#x303; &#x69;&#x307;&#x303;</span></div>
<div class="test" lang="lt">
<span>&#x69;&#x307;&#x300; &#x69;&#x307;&#x300;</span> <span>&#x69;&#x307;&#x301; &#x69;&#x307;&#x301;</span> <span>&#x69;&#x307;&#x303; &#x69;&#x307;&#x303;</span>
<span>&#x69;&#x307;&#x300; &#x69;&#x307;&#x300;</span> <span>&#x6A;&#x307;&#x301; &#x6A;&#x307;&#x301;</span> <span>&#x12F;&#x307;&#x303; &#x12F;&#x307;&#x303;</span>
</div>
<!--Notes:
The language of the test box is set to Lithuanian (lt)
-->

View file

@ -0,0 +1,33 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>CSS3 Text, text transform: Lithuanian, uppercase</title>
<link rel='author' title='Jonathan Kew' href='mailto:jkew@mozilla.com'>
<style type='text/css'>
@font-face {
font-family: 'webfont';
src: url('/fonts/DoulosSIL-R.woff') format('woff');
font-weight: normal;
font-style: normal;
}
.test, .ref { font-size: 200%; line-height: 2.5em; font-family: webfont, serif; }
.test span, .ref span { margin-right: 1em; white-space: nowrap; }
</style>
</head>
<body>
<p class="instructions">Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.</p>
<div class="test" lang="lt">
<span>&#x49;&#x300; &#x49;&#x300;</span>
<span>&#x49;&#x301; &#x49;&#x301;</span>
<span>&#x49;&#x303; &#x49;&#x303;</span>
<span>&#x49; &#x49;</span>
<span>&#x4A; &#x4A;</span>
<span>&#x12E; &#x12E;</span>
<span>X&#x307; X&#x307;</span>
</div>
<!--Notes:
The language of the test box is set to Lithuanian (lt)
-->
</body>
</html>

View file

@ -22,7 +22,10 @@
</head>
<body>
<p class="instructions">Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.</p>
<div class="test" lang="lt"><span>&#xCC; &#x69;&#x307;&#x300;</span> <span>&#xCD; &#x69;&#x307;&#x301;</span> <span>&#x128; &#x69;&#x307;&#x303;</span></div>
<div class="test" lang="lt">
<span>&#xCC; &#x69;&#x307;&#x300;</span> <span>&#xCD; &#x69;&#x307;&#x301;</span> <span>&#x128; &#x69;&#x307;&#x303;</span>
<span>&#x49;&#x300; &#x69;&#x307;&#x300;</span> <span>&#x4A;&#x301; &#x6A;&#x307;&#x301;</span> <span>&#x12E;&#x303; &#x12F;&#x307;&#x303;</span>
</div>
<!--Notes:
The language of the test box is set to Lithuanian (lt)
-->

View file

@ -0,0 +1,38 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8"/>
<title>CSS3 Text, text transform: Lithuanian, uppercase</title>
<meta name="assert" content="text-transform: uppercase will uppercase Lithuanian as described in Unicode's SpecialCasing.txt .">
<link rel='author' title='Jonathan Kew' href='mailto:jkew@mozilla.com'>
<link rel='help' href='https://drafts.csswg.org/css-text-3/#text-transform'>
<link rel="match" href="reference/text-transform-upperlower-044-ref.html">
<style type='text/css'>
@font-face {
font-family: 'webfont';
src: url('/fonts/DoulosSIL-R.woff') format('woff');
font-weight: normal;
font-style: normal;
}
.test, .ref { font-size: 200%; line-height: 2.5em; font-family: webfont, serif; }
.test span, .ref span { margin-right: 1em; white-space: nowrap; }
/* the CSS above is not part of the test */
.test { text-transform: uppercase; }
</style>
</head>
<body>
<p class="instructions">Test passes if both characters in each pair match. If you are missing a font glyph for a character, ignore that pair, but report which characters were ignored.</p>
<div class="test" lang="lt">
<span>&#x69;&#x307;&#x300; &#x49;&#x300;</span>
<span>&#x69;&#x307;&#x301; &#x49;&#x301;</span>
<span>&#x69;&#x307;&#x303; &#x49;&#x303;</span>
<span>&#x69;&#x307; &#x49;</span>
<span>&#x6A;&#x307; &#x4A;</span>
<span>&#x12F;&#x307; &#x12E;</span>
<span>x&#x307; X&#x307;</span> <!-- check that dot isn't deleted in other contexts -->
</div>
<!--Notes:
The language of the test box is set to Lithuanian (lt)
-->
</body>
</html>

View file

@ -17,6 +17,9 @@ async_test(function(t) {
var video = document.createElement('video');
video.src = getVideoURI('/media/movie_5');
// uanset media element's `show-poster` flag in order to run `time marches on`
// when we add new cues into media element's cues list.
video.play();
var trackElement = document.createElement('track');
trackElement.onload = t.step_func(eventCallback);
@ -36,4 +39,4 @@ async_test(function(t) {
trackElement.default = true;
video.appendChild(trackElement);
});
</script>
</script>

View file

@ -21,7 +21,7 @@
break;
case 1:
case 3:
case 5:
case 4:
assert_unreached("'error' event did not fire, stage = " + stage);
break;
case 2:
@ -30,21 +30,10 @@
assert_equals(cues[cues.length-1].text, 'I said Bear is coming now!!!! Tab separators.', "Last cue content check");
++stage;
testTrack.src = ""; // this should fail
// CuesList will be cleared in the next tick. Spec claims that this should happen immediately,
// but all implementations are doing this asynchronously.
assert_equals(cues.length, 4, "Number of cues immediately after 'src' mutation with the empty URL");
assert_equals(cues.length, 0, "cues list is reset immediately after 'src' mutation with the new URL");
// This should raise onError event. If no, we'll know about this after some time.
timer = t.step_timeout(t.unreached_func("'error' event is not fired when an empty URL is set"), 100);
break;
case 4:
assert_equals(testTrack.readyState, HTMLTrackElement.LOADED, "readyState after loading of the second track");
assert_equals(cues.length, 4, "Number of cues after loading of the second track");
assert_equals(cues[cues.length-1].text, 'I said Bear is coming now!!!! Tab separators.', "Last cue content check");
++stage;
testTrack.removeAttribute('src');
// This should raise onError event, so we'll wait for it for some time
timer = t.step_timeout(t.unreached_func("'error' event is not fired when an empty URL is set"), 100);
break;
default:
assert_unreached("unexpected stage number = " + stage);
break;
@ -55,7 +44,6 @@
switch (stage) {
case 0:
case 2:
case 4:
assert_unreached("'error' event fired, stage = " + stage);
break;
case 1:
@ -72,8 +60,14 @@
assert_equals(cues.length, 0, "Number of cues with an empty URL set");
++stage;
testTrack.src = "resources/settings.vtt";
// error should happen when we remove `src` during loading, so we have to wait a task because loading starts asynchronously.
t.step_timeout(() => {
testTrack.removeAttribute('src');
// This should raise onError event, so we'll wait for it for some time
timer = t.step_timeout(t.unreached_func("'error' event is not fired when an empty URL is set"), 100);
}, 0);
break;
case 5:
case 4:
clearTimeout(timer);
assert_equals(testTrack.readyState, HTMLTrackElement.ERROR, "readyState after removing 'src' attr");
assert_equals(cues.length, 0, "Number of cues after removing 'src' attr");
@ -89,4 +83,4 @@
testTrack.onerror = t.step_func(step_onError);
});
</script>
</video>
</video>

View file

@ -18,9 +18,7 @@
assert_equals(cues[cues.length-1].text, 'I said Bear is coming now!!!! Tab separators.', "Last cue content check");
++stage;
testTrack.src = "resources/entities.vtt";
// CuesList will be cleared in a microtask. Spec claims that this should happen immediately,
// but all known implementations are doing this asynchronously.
assert_equals(cues.length, 4, "Number of cues immediately after 'src' mutation with the new URL");
assert_equals(cues.length, 0, "cues list is reset immediately after 'src' mutation with the new URL");
break;
case 1:
assert_equals(testTrack.readyState, HTMLTrackElement.LOADED), "readyState after loading of the second track";
@ -54,4 +52,4 @@
testTrack.onerror = t.unreached_func("'error' event should not fire");
});
</script>
</video>
</video>

View file

@ -33,11 +33,12 @@ async_test(function(t) {
assert_equals(track1.track.cues.length, 12);
assert_equals(track1.track.cues[11].startTime, 22);
// Add a caption track, configured to load automatically.
// Add a caption track, and explicitly enable it.
track2 = document.createElement('track');
track2.setAttribute('kind', 'captions');
track2.setAttribute('default', 'default');
track2.setAttribute('src', 'resources/webvtt-file.vtt');
track2.track.mode = 'showing';
track2.onload = t.step_func(captionsTrackLoaded);
video.appendChild(track2);
}
@ -56,7 +57,7 @@ async_test(function(t) {
track3.mode = 'showing';
}
function trackAdded() {
function trackAdded(event) {
// Check that metadata track state has not changed.
assert_equals(track1.readyState, HTMLTrackElement.LOADED);
assert_equals(track1.track.mode, 'hidden');

View file

@ -0,0 +1,36 @@
<!DOCTYPE html>
<title>HTMLTrackElement Text Track Selection Task Order</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
/**
* This test is used to ensure that we queue 'honor user preferences for automatic
* text track selection' as a macro task, not a micro task. In this test, we
* trigger a media event before queuing a text track selection task, and check
* the text track's mode to know whether the text track selection runs after the
* task for media event.
*/
async_test(function(t) {
let video = document.createElement("video");
video.play();
video.onplay = t.step_func(startedPlay);
// When we create a text track element, it queue a task to run automatic
// text track selection later.
let track = document.createElement("track");
track.default = true;
video.appendChild(track);
assert_equals(track.track.mode, "disabled", "Text track's mode is disabled by default.");
function startedPlay() {
assert_equals(track.track.mode, "disabled", "Text track selection hasn't started yet.");
track.onerror = t.step_func_done(trackError);
}
function trackError() {
assert_equals(track.track.mode, "showing", "Text track selection modified track's mode.");
t.done();
}
});
</script>

View file

@ -17,21 +17,12 @@
<a href="support/target_blank_implicit_noopener.html?a7" id="a7" rel="opener noreferrer" target="_blank">Click me</a>
<a href="support/target_blank_implicit_noopener.html?a8" id="a8" rel="noopener opener noreferrer" target="_blank">Click me</a>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area1" id="area1" rel="noopener" target="_blank" />
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area2" id="area2" rel="opener" target="_blank" />
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area3" id="area3" target="_blank" />
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area4" id="area4" rel="opener noopener" target="_blank" />
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area5" id="area5" rel="noopener opener" target="_blank" />
</img>
<!-- Although this is not valid, per the processing model of area it ought to work -->
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area1" id="area1" rel="noopener" target="_blank">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area2" id="area2" rel="opener" target="_blank">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area3" id="area3" target="_blank">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area4" id="area4" rel="opener noopener" target="_blank">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area5" id="area5" rel="noopener opener" target="_blank">
<script>

View file

@ -18,21 +18,12 @@
<a href="support/target_blank_implicit_noopener.html?a7" id="a7" rel="opener noreferrer">Click me</a>
<a href="support/target_blank_implicit_noopener.html?a8" id="a8" rel="noopener opener noreferrer">Click me</a>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area1" id="area1" rel="noopener">
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area2" id="area2" rel="opener">
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area3" id="area3">
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area4" id="area4" rel="opener noopener">
</img>
<img src="/images/threecolors.png" />
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area5" id="area5" rel="noopener opener">
</img>
<!-- Although this is not valid, per the processing model of area it ought to work -->
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area1" id="area1" rel="noopener">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area2" id="area2" rel="opener">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area3" id="area3">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area4" id="area4" rel="opener noopener">
<area shape="rect" coords="0,0,99,50" href="support/target_blank_implicit_noopener.html?area5" id="area5" rel="noopener opener">
<script>

View file

@ -52,7 +52,6 @@ dictionary MediaTrackSupportedConstraints {
boolean frameRate = true;
boolean facingMode = true;
boolean resizeMode = true;
boolean volume = true;
boolean sampleRate = true;
boolean sampleSize = true;
boolean echoCancellation = true;
@ -71,7 +70,6 @@ dictionary MediaTrackCapabilities {
DoubleRange frameRate;
sequence<DOMString> facingMode;
sequence<DOMString> resizeMode;
DoubleRange volume;
ULongRange sampleRate;
ULongRange sampleSize;
sequence<boolean> echoCancellation;
@ -94,7 +92,6 @@ dictionary MediaTrackConstraintSet {
ConstrainDouble frameRate;
ConstrainDOMString facingMode;
ConstrainDOMString resizeMode;
ConstrainDouble volume;
ConstrainULong sampleRate;
ConstrainULong sampleSize;
ConstrainBoolean echoCancellation;
@ -113,7 +110,6 @@ dictionary MediaTrackSettings {
double frameRate;
DOMString facingMode;
DOMString resizeMode;
double volume;
long sampleRate;
long sampleSize;
boolean echoCancellation;

View file

@ -16,5 +16,5 @@ interface WakeLock {
};
dictionary WakeLockRequestOptions {
AbortSignal? signal = null;
AbortSignal signal;
};

View file

@ -568,7 +568,8 @@ interface AudioParamMap {
[Exposed=Window,
SecureContext,
Constructor (BaseAudioContext context, DOMString name, optional AudioWorkletNodeOptions options)]
Constructor (BaseAudioContext context, DOMString name,
optional AudioWorkletNodeOptions options)]
interface AudioWorkletNode : AudioNode {
readonly attribute AudioParamMap parameters;
readonly attribute MessagePort port;

View file

@ -382,7 +382,7 @@ dictionary RTCRtpContributingSource {
required DOMHighResTimeStamp timestamp;
required unsigned long source;
double audioLevel;
unsigned long rtpTimestamp;
required unsigned long rtpTimestamp;
};
dictionary RTCRtpSynchronizationSource : RTCRtpContributingSource {

View file

@ -0,0 +1,34 @@
<!DOCTYPE html>
<title>Tests that portal don't navigate to non-http schemes.</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<body>
<script>
async_test(t => {
var portal = document.createElement("portal");
portal.src = "data:text/html,empty portal";
portal.onload = t.unreached_func("Portal loaded data URL.");
document.body.appendChild(portal);
t.step_timeout(() => { portal.remove(); t.done(); }, 3000);
}, "Tests that a portal can't navigate to a data URL.");
async_test(t => {
var portal = document.createElement("portal");
portal.src = "about:blank";
portal.onload = t.unreached_func("Portal loaded about:blank.");
document.body.appendChild(portal);
t.step_timeout(() => { portal.remove(); t.done(); }, 3000);
}, "Tests that a portal can't navigate to about:blank.");
async_test(t => {
var portal = document.createElement("portal");
portal.src = "resources/simple-portal.html";
portal.onload = t.step_func(() => {
portal.onmessage = t.unreached_func("Portal execute javascript.");
portal.src = "javascript:window.portalHost.postMessage('executed', '*')";
t.step_timeout(() => { portal.remove(); t.done(); }, 3000);
});
document.body.appendChild(portal);
}, "Tests that a portal can't navigate to javascript URLs.");
</script>
</body>

View file

@ -161,6 +161,7 @@ def run_info_extras(**kwargs):
"wasm": kwargs.get("wasm", True),
"verify": kwargs["verify"],
"headless": "MOZ_HEADLESS" in os.environ,
"fission": get_bool_pref("fission.autostart"),
"sw-e10s": get_bool_pref("dom.serviceWorkers.parent_intercept")}
rv.update(run_info_browser_version(kwargs["binary"]))
return rv

View file

@ -0,0 +1,8 @@
//META: title=Screen wake lock should not be allowed in dedicated worker
importScripts("/resources/testharness.js");
promise_test(t => {
return promise_rejects(t, "NotAllowedError", WakeLock.request('screen'));
}, "Screen wake lock should not be allowed in dedicated worker");
done();

View file

@ -1,4 +1,4 @@
//META: title=WakeLock.request() with invaild type
//META: title=WakeLock.request() with invalid type
promise_test(async t => {
await promise_rejects(t, new TypeError(), WakeLock.request());

View file

@ -263,6 +263,17 @@ a=rtcp-rsize
sdpMid: sdpMid1 }));
}, 'Add candidate with only valid sdpMid should succeed');
promise_test(t => {
const pc = new RTCPeerConnection();
t.add_cleanup(() => pc.close());
return pc.setRemoteDescription(sessionDesc)
.then(() => pc.addIceCandidate(new RTCIceCandidate({
candidate: candidateStr1,
sdpMid: sdpMid1 })));
}, 'Add candidate with only valid sdpMid and RTCIceCandidate should succeed');
promise_test(t => {
const pc = new RTCPeerConnection();

View file

@ -12,9 +12,11 @@
var client = new XMLHttpRequest()
client.open("GET", "resources/well-formed.xml", false)
client.send(null)
var responseURL = new URL('resources/well-formed.xml', location.href).href
var responseURLObject = new URL('resources/well-formed.xml', location.href);
var responseURL = responseURLObject.href
var responseDomain = responseURLObject.hostname
var expected = {
domain:undefined,
domain:responseDomain,
URL:responseURL,
documentURI:responseURL,
baseURI:responseURL,