mirror of
https://github.com/servo/servo.git
synced 2025-06-26 01:54:33 +01:00
Update web-platform-tests to revision b1d8b4ac4dc04fd1da16cb309ed675fa6a07bfd6
This commit is contained in:
parent
dbba9ea453
commit
50a6996461
36 changed files with 794 additions and 73 deletions
|
@ -137793,6 +137793,18 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"css/css-overflow/overflow-recalc-001.html": [
|
||||||
|
[
|
||||||
|
"css/css-overflow/overflow-recalc-001.html",
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-overflow/reference/overflow-recalc-001-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"css/css-overflow/webkit-line-clamp-001.html": [
|
"css/css-overflow/webkit-line-clamp-001.html": [
|
||||||
[
|
[
|
||||||
"css/css-overflow/webkit-line-clamp-001.html",
|
"css/css-overflow/webkit-line-clamp-001.html",
|
||||||
|
@ -256922,6 +256934,9 @@
|
||||||
"css/css-overflow/reference/overflow-body-propagation-ref.html": [
|
"css/css-overflow/reference/overflow-body-propagation-ref.html": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"css/css-overflow/reference/overflow-recalc-001-ref.html": [
|
||||||
|
[]
|
||||||
|
],
|
||||||
"css/css-overflow/reference/webkit-line-clamp-001-ref.html": [
|
"css/css-overflow/reference/webkit-line-clamp-001-ref.html": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
@ -269876,6 +269891,9 @@
|
||||||
"element-timing/resources/circle.svg": [
|
"element-timing/resources/circle.svg": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"element-timing/resources/circle.svg.headers": [
|
||||||
|
[]
|
||||||
|
],
|
||||||
"element-timing/resources/element-timing-helpers.js": [
|
"element-timing/resources/element-timing-helpers.js": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
@ -273362,6 +273380,9 @@
|
||||||
"html/browsers/windows/resources/window-opener.html": [
|
"html/browsers/windows/resources/window-opener.html": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"html/cross-origin-embedder-policy/META.yml": [
|
||||||
|
[]
|
||||||
|
],
|
||||||
"html/cross-origin-embedder-policy/README.md": [
|
"html/cross-origin-embedder-policy/README.md": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
@ -273437,6 +273458,9 @@
|
||||||
"html/cross-origin-embedder-policy/srcdoc.https.html.headers": [
|
"html/cross-origin-embedder-policy/srcdoc.https.html.headers": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"html/cross-origin-opener-policy/META.yml": [
|
||||||
|
[]
|
||||||
|
],
|
||||||
"html/cross-origin-opener-policy/README.md": [
|
"html/cross-origin-opener-policy/README.md": [
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
@ -341479,6 +341503,12 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"dom/collections/HTMLCollection-live-mutations.window.js": [
|
||||||
|
[
|
||||||
|
"dom/collections/HTMLCollection-live-mutations.window.html",
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"dom/collections/HTMLCollection-own-props.html": [
|
"dom/collections/HTMLCollection-own-props.html": [
|
||||||
[
|
[
|
||||||
"dom/collections/HTMLCollection-own-props.html",
|
"dom/collections/HTMLCollection-own-props.html",
|
||||||
|
@ -342986,6 +343016,12 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"dom/nodes/NodeList-live-mutations.window.js": [
|
||||||
|
[
|
||||||
|
"dom/nodes/NodeList-live-mutations.window.html",
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"dom/nodes/ParentNode-append.html": [
|
"dom/nodes/ParentNode-append.html": [
|
||||||
[
|
[
|
||||||
"dom/nodes/ParentNode-append.html",
|
"dom/nodes/ParentNode-append.html",
|
||||||
|
@ -362034,6 +362070,12 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"html/cross-origin-opener-policy/popup-meta-http-equiv.https.html": [
|
||||||
|
[
|
||||||
|
"html/cross-origin-opener-policy/popup-meta-http-equiv.https.html",
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"html/cross-origin-opener-policy/popup-redirect-cache.https.html": [
|
"html/cross-origin-opener-policy/popup-redirect-cache.https.html": [
|
||||||
[
|
[
|
||||||
"html/cross-origin-opener-policy/popup-redirect-cache.https.html",
|
"html/cross-origin-opener-policy/popup-redirect-cache.https.html",
|
||||||
|
@ -376492,6 +376534,12 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"largest-contentful-paint/multi-redirects-TAO.html": [
|
||||||
|
[
|
||||||
|
"largest-contentful-paint/multi-redirects-TAO.html",
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"largest-contentful-paint/observe-after-untrusted-scroll.html": [
|
"largest-contentful-paint/observe-after-untrusted-scroll.html": [
|
||||||
[
|
[
|
||||||
"largest-contentful-paint/observe-after-untrusted-scroll.html",
|
"largest-contentful-paint/observe-after-untrusted-scroll.html",
|
||||||
|
@ -410028,6 +410076,12 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"resource-timing/object-not-found-adds-entry.html": [
|
||||||
|
[
|
||||||
|
"resource-timing/object-not-found-adds-entry.html",
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"resource-timing/redirects.sub.html": [
|
"resource-timing/redirects.sub.html": [
|
||||||
[
|
[
|
||||||
"resource-timing/redirects.sub.html",
|
"resource-timing/redirects.sub.html",
|
||||||
|
@ -591118,6 +591172,10 @@
|
||||||
"963192f6f431cd073f5d8fddc2294259ad62962b",
|
"963192f6f431cd073f5d8fddc2294259ad62962b",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
|
"css/css-overflow/overflow-recalc-001.html": [
|
||||||
|
"9c5919a5044bdbac0e782fbb662f1ff3b81857fc",
|
||||||
|
"reftest"
|
||||||
|
],
|
||||||
"css/css-overflow/overflow-shorthand-001.html": [
|
"css/css-overflow/overflow-shorthand-001.html": [
|
||||||
"f425636c3bb4297e4e6564d1c2629dc10dde5607",
|
"f425636c3bb4297e4e6564d1c2629dc10dde5607",
|
||||||
"testharness"
|
"testharness"
|
||||||
|
@ -591202,6 +591260,10 @@
|
||||||
"340bda9de92352fe1ef6633610da31e867013299",
|
"340bda9de92352fe1ef6633610da31e867013299",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
|
"css/css-overflow/reference/overflow-recalc-001-ref.html": [
|
||||||
|
"b18dee8caf1864dc30fe656750fe81a8863f1e90",
|
||||||
|
"support"
|
||||||
|
],
|
||||||
"css/css-overflow/reference/webkit-line-clamp-001-ref.html": [
|
"css/css-overflow/reference/webkit-line-clamp-001-ref.html": [
|
||||||
"ef28e01dac0223c9a2768d3fd1415fb9ef2f1c6b",
|
"ef28e01dac0223c9a2768d3fd1415fb9ef2f1c6b",
|
||||||
"support"
|
"support"
|
||||||
|
@ -641815,7 +641877,7 @@
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"document-policy/required-policy/document-policy.html": [
|
"document-policy/required-policy/document-policy.html": [
|
||||||
"d6bf3e9a6d490ad5462267ae913002b696b96a80",
|
"1935be3dd0a961add3d80aa35ded92734d9f8869",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
"document-policy/required-policy/document-policy.html.headers": [
|
"document-policy/required-policy/document-policy.html.headers": [
|
||||||
|
@ -641835,7 +641897,7 @@
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
"document-policy/required-policy/required-document-policy.html.headers": [
|
"document-policy/required-policy/required-document-policy.html.headers": [
|
||||||
"066c0f8339ea21c1102c78d82d07d060252a9980",
|
"1b671dafe06d44e5b267bbfc54691f5f911297eb",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"dom/META.yml": [
|
"dom/META.yml": [
|
||||||
|
@ -641858,6 +641920,10 @@
|
||||||
"4fc34db7f5f245933013a76335f71e9f4cffe115",
|
"4fc34db7f5f245933013a76335f71e9f4cffe115",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
|
"dom/collections/HTMLCollection-live-mutations.window.js": [
|
||||||
|
"7dbfc6ccf67d37d7272b3490665e218d0549e79e",
|
||||||
|
"testharness"
|
||||||
|
],
|
||||||
"dom/collections/HTMLCollection-own-props.html": [
|
"dom/collections/HTMLCollection-own-props.html": [
|
||||||
"1f21c0837ec92bf48b6f497da22e60a435913a06",
|
"1f21c0837ec92bf48b6f497da22e60a435913a06",
|
||||||
"testharness"
|
"testharness"
|
||||||
|
@ -643054,6 +643120,10 @@
|
||||||
"fcbee175cb3e07235fcd759e866feb488e31e91f",
|
"fcbee175cb3e07235fcd759e866feb488e31e91f",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
|
"dom/nodes/NodeList-live-mutations.window.js": [
|
||||||
|
"a11fed1e38efe88e634310d64db1bafe4d34fa1a",
|
||||||
|
"testharness"
|
||||||
|
],
|
||||||
"dom/nodes/ParentNode-append.html": [
|
"dom/nodes/ParentNode-append.html": [
|
||||||
"dcc398f3f586d1d627d0ffa0c689f3b1f67ece16",
|
"dcc398f3f586d1d627d0ffa0c689f3b1f67ece16",
|
||||||
"testharness"
|
"testharness"
|
||||||
|
@ -644415,7 +644485,7 @@
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
"element-timing/multi-redirect-image.html": [
|
"element-timing/multi-redirect-image.html": [
|
||||||
"c2f570f20df7989617ea37beaee266562cbf7756",
|
"2a12c5f03c42c6f45c3c975d3deba0c01b8db084",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
"element-timing/multiple-background-images.html": [
|
"element-timing/multiple-background-images.html": [
|
||||||
|
@ -644478,6 +644548,10 @@
|
||||||
"209b9f4e5b5d55b45b5ec80dac25873d06dfb593",
|
"209b9f4e5b5d55b45b5ec80dac25873d06dfb593",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
|
"element-timing/resources/circle.svg.headers": [
|
||||||
|
"7296361df3d1c5755acdb825661dbd9a1807b64f",
|
||||||
|
"support"
|
||||||
|
],
|
||||||
"element-timing/resources/element-timing-helpers.js": [
|
"element-timing/resources/element-timing-helpers.js": [
|
||||||
"b7f2eef5978ac5d559865dd34848f15ef0abba10",
|
"b7f2eef5978ac5d559865dd34848f15ef0abba10",
|
||||||
"support"
|
"support"
|
||||||
|
@ -654286,6 +654360,10 @@
|
||||||
"7407248ffe9fe3da977275c2192e31e3db9fc8a9",
|
"7407248ffe9fe3da977275c2192e31e3db9fc8a9",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
|
"html/cross-origin-embedder-policy/META.yml": [
|
||||||
|
"103217d38892308541fbc0dbc8d39acfb47d4e80",
|
||||||
|
"support"
|
||||||
|
],
|
||||||
"html/cross-origin-embedder-policy/README.md": [
|
"html/cross-origin-embedder-policy/README.md": [
|
||||||
"16179eb0133a9e14667e127da05f3dc796975875",
|
"16179eb0133a9e14667e127da05f3dc796975875",
|
||||||
"support"
|
"support"
|
||||||
|
@ -654450,6 +654528,10 @@
|
||||||
"6604450991a122e3e241e40b1b9e0516c525389d",
|
"6604450991a122e3e241e40b1b9e0516c525389d",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
|
"html/cross-origin-opener-policy/META.yml": [
|
||||||
|
"6c6d26211861f5af94cebae7a687b70d10ffe1b4",
|
||||||
|
"support"
|
||||||
|
],
|
||||||
"html/cross-origin-opener-policy/README.md": [
|
"html/cross-origin-opener-policy/README.md": [
|
||||||
"3f080c82d25de71d899d3b3011afcc3c553fb2a2",
|
"3f080c82d25de71d899d3b3011afcc3c553fb2a2",
|
||||||
"support"
|
"support"
|
||||||
|
@ -654491,7 +654573,7 @@
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"html/cross-origin-opener-policy/coop-sandbox.https.html": [
|
"html/cross-origin-opener-policy/coop-sandbox.https.html": [
|
||||||
"fc16c186cadf44bd1639d0eacf610e7781bc02bd",
|
"5fd11643d5720f54e0b5112e96a9cfea5cafdf9d",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
"html/cross-origin-opener-policy/coop-sandbox.https.html.headers": [
|
"html/cross-origin-opener-policy/coop-sandbox.https.html.headers": [
|
||||||
|
@ -654582,6 +654664,10 @@
|
||||||
"46ad58d83bf6e98913ca4c564b7acb8f19fa0093",
|
"46ad58d83bf6e98913ca4c564b7acb8f19fa0093",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
|
"html/cross-origin-opener-policy/popup-meta-http-equiv.https.html": [
|
||||||
|
"e36b5190aafc0b42b043802422dd411a831a20a5",
|
||||||
|
"testharness"
|
||||||
|
],
|
||||||
"html/cross-origin-opener-policy/popup-meta-http-equiv.https.html.headers": [
|
"html/cross-origin-opener-policy/popup-meta-http-equiv.https.html.headers": [
|
||||||
"46ad58d83bf6e98913ca4c564b7acb8f19fa0093",
|
"46ad58d83bf6e98913ca4c564b7acb8f19fa0093",
|
||||||
"support"
|
"support"
|
||||||
|
@ -661447,7 +661533,7 @@
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
"html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-aspect-ratio.html": [
|
"html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-aspect-ratio.html": [
|
||||||
"3000032978082356086930b2b5bee96b73947dc8",
|
"eceef92a6418f3d74ffbd13a08d8e648dff42a3f",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
"html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-dim-ref.html": [
|
"html/rendering/replaced-elements/attributes-for-embedded-content-and-images/img-dim-ref.html": [
|
||||||
|
@ -673463,7 +673549,7 @@
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"interfaces/html.idl": [
|
"interfaces/html.idl": [
|
||||||
"266574de63e8f2aac4a782ba836a277bb5a2997d",
|
"2c0c489315c96b6980181236b8602df60929c3f9",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"interfaces/image-capture.idl": [
|
"interfaces/image-capture.idl": [
|
||||||
|
@ -673723,7 +673809,7 @@
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"interfaces/web-nfc.idl": [
|
"interfaces/web-nfc.idl": [
|
||||||
"12ea9d58bc055ee57efb65ae1495ebf4301427a5",
|
"f2e31b7352867d39edc9c43a4f1fffb3a02cb985",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"interfaces/web-share.idl": [
|
"interfaces/web-share.idl": [
|
||||||
|
@ -674358,6 +674444,10 @@
|
||||||
"0e40127b57683fa76392827003b15c2bb9c8d558",
|
"0e40127b57683fa76392827003b15c2bb9c8d558",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
|
"largest-contentful-paint/multi-redirects-TAO.html": [
|
||||||
|
"4e462c729aace01d40b9255465af7fc79f8fdb3c",
|
||||||
|
"testharness"
|
||||||
|
],
|
||||||
"largest-contentful-paint/observe-after-untrusted-scroll.html": [
|
"largest-contentful-paint/observe-after-untrusted-scroll.html": [
|
||||||
"1b2cd1d25b5bb9da740e5127526fed41dcebfae7",
|
"1b2cd1d25b5bb9da740e5127526fed41dcebfae7",
|
||||||
"testharness"
|
"testharness"
|
||||||
|
@ -702042,6 +702132,10 @@
|
||||||
"63f9e06e19083a6d956af0d5916455cd7e91b89c",
|
"63f9e06e19083a6d956af0d5916455cd7e91b89c",
|
||||||
"testharness"
|
"testharness"
|
||||||
],
|
],
|
||||||
|
"resource-timing/object-not-found-adds-entry.html": [
|
||||||
|
"22ee95e2d51ffcb29468d9e51459c5035f508bb5",
|
||||||
|
"testharness"
|
||||||
|
],
|
||||||
"resource-timing/redirects.sub.html": [
|
"resource-timing/redirects.sub.html": [
|
||||||
"d3d4f75c817dea1f61e27660949ec327d3a7a61a",
|
"d3d4f75c817dea1f61e27660949ec327d3a7a61a",
|
||||||
"testharness"
|
"testharness"
|
||||||
|
@ -713883,7 +713977,7 @@
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"tools/lint/lint.py": [
|
"tools/lint/lint.py": [
|
||||||
"a050cfa8a8e4e2699db44ce9e52f8f230a34a869",
|
"4090f2628a6fea12a0ed4957c55b925b14882f33",
|
||||||
"support"
|
"support"
|
||||||
],
|
],
|
||||||
"tools/lint/rules.py": [
|
"tools/lint/rules.py": [
|
||||||
|
|
|
@ -2,3 +2,6 @@
|
||||||
[elementsFromPoint on the root document for points in iframe elements]
|
[elementsFromPoint on the root document for points in iframe elements]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[elementsFromPoint on inner documents]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -312,24 +312,21 @@
|
||||||
[fetch(): separate response Content-Type: text/plain ]
|
[fetch(): separate response Content-Type: text/plain ]
|
||||||
expected: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html;" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/plain */*]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[<iframe>: combined response Content-Type: text/html */*]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[<iframe>: combined response Content-Type: text/html;x=" text/plain]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -56,6 +56,3 @@
|
||||||
[separate text/javascript x/x]
|
[separate text/javascript x/x]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[separate text/javascript error]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
|
|
|
@ -11,3 +11,6 @@
|
||||||
[X-Content-Type-Options%3A%20nosniff%0C]
|
[X-Content-Type-Options%3A%20nosniff%0C]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[X-Content-Type-Options%3A%0D%0AX-Content-Type-Options%3A%20nosniff]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[embedded-credentials.tentative.sub.html]
|
[embedded-credentials.tentative.sub.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
expected: TIMEOUT
|
expected: CRASH
|
||||||
[Embedded credentials are treated as network errors.]
|
[Embedded credentials are treated as network errors.]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[traverse_the_history_1.html]
|
||||||
|
[Multiple history traversals from the same task]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[traverse_the_history_2.html]
|
|
||||||
[Multiple history traversals, last would be aborted]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1397,6 +1397,18 @@
|
||||||
[SubmitEvent interface: existence and properties of interface prototype object's "constructor" property]
|
[SubmitEvent interface: existence and properties of interface prototype object's "constructor" property]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[SVGElement interface: attribute onwebkitanimationend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[SVGElement interface: attribute onwebkitanimationstart]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[SVGElement interface: attribute onwebkittransitionend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[SVGElement interface: attribute onwebkitanimationiteration]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
||||||
[idlharness.https.html?include=(Document|Window)]
|
[idlharness.https.html?include=(Document|Window)]
|
||||||
[Document interface: documentWithHandlers must inherit property "queryCommandEnabled(DOMString)" with the proper type]
|
[Document interface: documentWithHandlers must inherit property "queryCommandEnabled(DOMString)" with the proper type]
|
||||||
|
@ -1777,6 +1789,78 @@
|
||||||
[SVGAElement includes HTMLHyperlinkElementUtils: member names are unique]
|
[SVGAElement includes HTMLHyperlinkElementUtils: member names are unique]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: attribute onwebkitanimationstart]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: new Document() must inherit property "onwebkittransitionend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: new Document() must inherit property "onwebkitanimationstart" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: iframe.contentDocument must inherit property "onwebkitanimationend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: window must inherit property "onwebkitanimationiteration" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: new Document() must inherit property "onwebkitanimationiteration" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: iframe.contentDocument must inherit property "onwebkitanimationiteration" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: attribute onwebkitanimationiteration]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: iframe.contentDocument must inherit property "onwebkitanimationstart" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: attribute onwebkittransitionend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: attribute onwebkitanimationiteration]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: documentWithHandlers must inherit property "onwebkitanimationiteration" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: window must inherit property "onwebkittransitionend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: attribute onwebkittransitionend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: attribute onwebkitanimationend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: documentWithHandlers must inherit property "onwebkitanimationend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: documentWithHandlers must inherit property "onwebkitanimationstart" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: attribute onwebkitanimationstart]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: window must inherit property "onwebkitanimationend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: new Document() must inherit property "onwebkitanimationend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: iframe.contentDocument must inherit property "onwebkittransitionend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: attribute onwebkitanimationend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Document interface: documentWithHandlers must inherit property "onwebkittransitionend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Window interface: window must inherit property "onwebkitanimationstart" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
||||||
[idlharness.https.html?include=HTML.*]
|
[idlharness.https.html?include=HTML.*]
|
||||||
[HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput("hidden") with too few arguments must throw TypeError]
|
[HTMLInputElement interface: calling setCustomValidity(DOMString) on createInput("hidden") with too few arguments must throw TypeError]
|
||||||
|
@ -4455,3 +4539,27 @@
|
||||||
[HTMLOptionElement interface: named constructor without 'new']
|
[HTMLOptionElement interface: named constructor without 'new']
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: attribute onwebkitanimationiteration]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: attribute onwebkitanimationend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: attribute onwebkitanimationstart]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: document.createElement("noscript") must inherit property "onwebkitanimationend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: document.createElement("noscript") must inherit property "onwebkitanimationiteration" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: attribute onwebkittransitionend]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: document.createElement("noscript") must inherit property "onwebkitanimationstart" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[HTMLElement interface: document.createElement("noscript") must inherit property "onwebkittransitionend" with the proper type]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,20 +1,16 @@
|
||||||
[supported-elements.html]
|
[supported-elements.html]
|
||||||
expected: TIMEOUT
|
|
||||||
[Contenteditable element should support autofocus]
|
[Contenteditable element should support autofocus]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[Element with tabindex should support autofocus]
|
[Element with tabindex should support autofocus]
|
||||||
expected: TIMEOUT
|
expected: FAIL
|
||||||
|
|
||||||
[Host element with delegatesFocus including no focusable descendants should be skipped]
|
[Host element with delegatesFocus including no focusable descendants should be skipped]
|
||||||
expected: NOTRUN
|
expected: FAIL
|
||||||
|
|
||||||
[Area element should support autofocus]
|
[Area element should support autofocus]
|
||||||
expected: NOTRUN
|
expected: FAIL
|
||||||
|
|
||||||
[Host element with delegatesFocus should support autofocus]
|
[Host element with delegatesFocus should support autofocus]
|
||||||
expected: NOTRUN
|
expected: FAIL
|
||||||
|
|
||||||
[Non-HTMLElement should not support autofocus]
|
|
||||||
expected: NOTRUN
|
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
[iframe_sandbox_popups_nonescaping-3.html]
|
[iframe_sandbox_popups_nonescaping-3.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
|
expected: CRASH
|
||||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[iframe_005.html]
|
|
||||||
[document.write external script into iframe write back into parent]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -393,3 +393,39 @@
|
||||||
[onslotchange: the default value must be null]
|
[onslotchange: the default value must be null]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationiteration: the default value must be null]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationstart: must be on the appropriate locations for GlobalEventHandlers]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationend: must be on the appropriate locations for GlobalEventHandlers]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationiteration: the content attribute must be compiled into a function as the corresponding property]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationstart: the content attribute must be compiled into a function as the corresponding property]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationstart: the default value must be null]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationend: the content attribute must be compiled into a function as the corresponding property]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationiteration: must be on the appropriate locations for GlobalEventHandlers]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkittransitionend: must be on the appropriate locations for GlobalEventHandlers]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkittransitionend: the content attribute must be compiled into a function as the corresponding property]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkitanimationend: the default value must be null]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[onwebkittransitionend: the default value must be null]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -78,3 +78,39 @@
|
||||||
[not shadowed slotchange (document.body)]
|
[not shadowed slotchange (document.body)]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkittransitionend (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationstart (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkittransitionend (document.createElement("body"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationend (document.createElement("body"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationend (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationiteration (document.createElement("body"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationstart (document.createElement("body"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationend (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationiteration (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkittransitionend (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationiteration (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationstart (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -71,3 +71,39 @@
|
||||||
[not shadowed slotchange (document.body)]
|
[not shadowed slotchange (document.body)]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkittransitionend (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationend (document.createElement("frameset"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationstart (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationstart (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationend (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationiteration (document.createElement("frameset"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationstart (document.createElement("frameset"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkittransitionend (document.createElement("frameset"))]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationend (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationiteration (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkittransitionend (window)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[not shadowed webkitanimationiteration (document.body)]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -32,3 +32,27 @@
|
||||||
[slotchange is unaffected on a windowless body]
|
[slotchange is unaffected on a windowless body]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkitanimationstart is unaffected on a windowless body]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkitanimationiteration is unaffected on a windowless frameset]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkitanimationiteration is unaffected on a windowless body]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkittransitionend is unaffected on a windowless frameset]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkitanimationend is unaffected on a windowless frameset]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkitanimationend is unaffected on a windowless body]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkittransitionend is unaffected on a windowless body]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[webkitanimationstart is unaffected on a windowless frameset]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
[object-not-found-adds-entry.html]
|
||||||
|
[Test that an navigation object with a 200 response displays an entry]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test that an navigation object with a 404 response displays an entry]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Test that an image object with a 404 response displays an entry]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
[017.html]
|
||||||
|
expected: TIMEOUT
|
||||||
|
[origin of the script that invoked the method, about:blank]
|
||||||
|
expected: TIMEOUT
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html class="reftest-wait">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Overflow: Overflow recalc after font-size change</title>
|
||||||
|
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-overflow/">
|
||||||
|
<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=1036644">
|
||||||
|
<link rel="match" href="reference/overflow-recalc-001-ref.html">
|
||||||
|
<meta name="assert" content="Checks that overflow of an inline element is properly recomputed after changes on the descendants.">
|
||||||
|
<script src="/common/reftest-wait.js"></script>
|
||||||
|
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||||
|
<style>
|
||||||
|
#scroller {
|
||||||
|
height: 200px;
|
||||||
|
overflow: scroll;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
#wrapper {
|
||||||
|
margin-top: 100px;
|
||||||
|
width: 200px;
|
||||||
|
height: 200px;
|
||||||
|
overflow: hidden;
|
||||||
|
font-family: Ahem;
|
||||||
|
line-height: 1;
|
||||||
|
color: green;
|
||||||
|
}
|
||||||
|
#red {
|
||||||
|
background: red;
|
||||||
|
width: 200px;
|
||||||
|
height: 200px;
|
||||||
|
position: absolute;
|
||||||
|
top: 100px;
|
||||||
|
z-index: -1;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<p>Test passes if there is <strong>no red</strong>.</p>
|
||||||
|
<div id="scroller">
|
||||||
|
<div id="wrapper">
|
||||||
|
<span id="inlineouter">
|
||||||
|
<span id="inlineinner">X</span>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
<div id="red"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
requestAnimationFrame(() => requestAnimationFrame(() => {
|
||||||
|
inlineinner.style.fontSize = "200px";
|
||||||
|
takeScreenshot();
|
||||||
|
}));
|
||||||
|
</script>
|
||||||
|
</html>
|
|
@ -0,0 +1,20 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Overflow: Reference Overflow recalc after font-size change</title>
|
||||||
|
<link rel="author" title="Manuel Rego Casasnovas" href="mailto:rego@igalia.com">
|
||||||
|
<style>
|
||||||
|
#scroller {
|
||||||
|
height: 200px;
|
||||||
|
overflow: scroll;
|
||||||
|
}
|
||||||
|
#wrapper {
|
||||||
|
margin-top: 100px;
|
||||||
|
width: 200px;
|
||||||
|
height: 200px;
|
||||||
|
background: green;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<p>Test passes if there is <strong>no red</strong>.</p>
|
||||||
|
<div id="scroller">
|
||||||
|
<div id="wrapper"></div>
|
||||||
|
</div>
|
|
@ -45,7 +45,7 @@ async_test(t => {
|
||||||
iframe.src = "/document-policy/echo-policy.py?id=3";
|
iframe.src = "/document-policy/echo-policy.py?id=3";
|
||||||
iframe.policy = "unoptimized-lossless-images;bpp=4";
|
iframe.policy = "unoptimized-lossless-images;bpp=4";
|
||||||
callbacks["3"] = t.step_func_done(result => {
|
callbacks["3"] = t.step_func_done(result => {
|
||||||
assert_equals(result, "unoptimized-lossless-images;bpp=4");
|
assert_equals(result, "unoptimized-lossless-images;bpp=4.0");
|
||||||
});
|
});
|
||||||
document.body.appendChild(iframe);
|
document.body.appendChild(iframe);
|
||||||
}, "Child frame can have a required policy which is less strict than the parent document's policy.");
|
}, "Child frame can have a required policy which is less strict than the parent document's policy.");
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Required-Document-Policy: unoptimized-lossless-images;bpp=1.1
|
Require-Document-Policy: unoptimized-lossless-images;bpp=1.1
|
||||||
|
|
|
@ -0,0 +1,93 @@
|
||||||
|
function testHTMLCollection(name, hooks) {
|
||||||
|
test(() => {
|
||||||
|
const nodes = {
|
||||||
|
root: document.createElement("div"),
|
||||||
|
div1: document.createElement("div"),
|
||||||
|
div2: document.createElement("div"),
|
||||||
|
p: document.createElement("p")
|
||||||
|
};
|
||||||
|
|
||||||
|
nodes.div1.id = "div1";
|
||||||
|
nodes.div2.id = "div2";
|
||||||
|
|
||||||
|
const list = nodes.root.getElementsByTagName("div");
|
||||||
|
|
||||||
|
hooks.initial(list, nodes);
|
||||||
|
|
||||||
|
nodes.root.appendChild(nodes.div1);
|
||||||
|
nodes.root.appendChild(nodes.p);
|
||||||
|
nodes.root.appendChild(nodes.div2);
|
||||||
|
|
||||||
|
hooks.afterInsertion(list, nodes);
|
||||||
|
|
||||||
|
nodes.root.removeChild(nodes.div1);
|
||||||
|
|
||||||
|
hooks.afterRemoval(list, nodes);
|
||||||
|
}, `HTMLCollection live mutations: ${name}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
testHTMLCollection("HTMLCollection.length", {
|
||||||
|
initial(list) {
|
||||||
|
assert_equals(list.length, 0);
|
||||||
|
},
|
||||||
|
afterInsertion(list) {
|
||||||
|
assert_equals(list.length, 2);
|
||||||
|
},
|
||||||
|
afterRemoval(list) {
|
||||||
|
assert_equals(list.length, 1);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
testHTMLCollection("HTMLCollection.item(index)", {
|
||||||
|
initial(list) {
|
||||||
|
assert_equals(list.item(0), null);
|
||||||
|
},
|
||||||
|
afterInsertion(list, nodes) {
|
||||||
|
assert_equals(list.item(0), nodes.div1);
|
||||||
|
assert_equals(list.item(1), nodes.div2);
|
||||||
|
},
|
||||||
|
afterRemoval(list, nodes) {
|
||||||
|
assert_equals(list.item(0), nodes.div2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
testHTMLCollection("HTMLCollection[index]", {
|
||||||
|
initial(list) {
|
||||||
|
assert_equals(list[0], undefined);
|
||||||
|
},
|
||||||
|
afterInsertion(list, nodes) {
|
||||||
|
assert_equals(list[0], nodes.div1);
|
||||||
|
assert_equals(list[1], nodes.div2);
|
||||||
|
},
|
||||||
|
afterRemoval(list, nodes) {
|
||||||
|
assert_equals(list[0], nodes.div2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
testHTMLCollection("HTMLCollection.namedItem(index)", {
|
||||||
|
initial(list) {
|
||||||
|
assert_equals(list.namedItem("div1"), null);
|
||||||
|
assert_equals(list.namedItem("div2"), null);
|
||||||
|
},
|
||||||
|
afterInsertion(list, nodes) {
|
||||||
|
assert_equals(list.namedItem("div1"), nodes.div1);
|
||||||
|
assert_equals(list.namedItem("div2"), nodes.div2);
|
||||||
|
},
|
||||||
|
afterRemoval(list, nodes) {
|
||||||
|
assert_equals(list.namedItem("div1"), null);
|
||||||
|
assert_equals(list.namedItem("div2"), nodes.div2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
testHTMLCollection("HTMLCollection ownPropertyNames", {
|
||||||
|
initial(list) {
|
||||||
|
assert_object_equals(Object.getOwnPropertyNames(list), []);
|
||||||
|
},
|
||||||
|
afterInsertion(list) {
|
||||||
|
assert_object_equals(Object.getOwnPropertyNames(list), ["0", "1", "div1", "div2"]);
|
||||||
|
},
|
||||||
|
afterRemoval(list) {
|
||||||
|
assert_object_equals(Object.getOwnPropertyNames(list), ["0", "div2"]);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
|
@ -0,0 +1,79 @@
|
||||||
|
function testNodeList(name, hooks) {
|
||||||
|
test(() => {
|
||||||
|
const nodes = {
|
||||||
|
root: document.createElement("div"),
|
||||||
|
div1: document.createElement("div"),
|
||||||
|
div2: document.createElement("div"),
|
||||||
|
p: document.createElement("p")
|
||||||
|
};
|
||||||
|
|
||||||
|
const list = nodes.root.childNodes;
|
||||||
|
|
||||||
|
hooks.initial(list, nodes);
|
||||||
|
|
||||||
|
nodes.root.appendChild(nodes.div1);
|
||||||
|
nodes.root.appendChild(nodes.p);
|
||||||
|
nodes.root.appendChild(nodes.div2);
|
||||||
|
|
||||||
|
hooks.afterInsertion(list, nodes);
|
||||||
|
|
||||||
|
nodes.root.removeChild(nodes.div1);
|
||||||
|
|
||||||
|
hooks.afterRemoval(list, nodes);
|
||||||
|
}, `NodeList live mutations: ${name}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
testNodeList("NodeList.length", {
|
||||||
|
initial(list) {
|
||||||
|
assert_equals(list.length, 0);
|
||||||
|
},
|
||||||
|
afterInsertion(list) {
|
||||||
|
assert_equals(list.length, 3);
|
||||||
|
},
|
||||||
|
afterRemoval(list) {
|
||||||
|
assert_equals(list.length, 2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
testNodeList("NodeList.item(index)", {
|
||||||
|
initial(list) {
|
||||||
|
assert_equals(list.item(0), null);
|
||||||
|
},
|
||||||
|
afterInsertion(list, nodes) {
|
||||||
|
assert_equals(list.item(0), nodes.div1);
|
||||||
|
assert_equals(list.item(1), nodes.p);
|
||||||
|
assert_equals(list.item(2), nodes.div2);
|
||||||
|
},
|
||||||
|
afterRemoval(list, nodes) {
|
||||||
|
assert_equals(list.item(0), nodes.p);
|
||||||
|
assert_equals(list.item(1), nodes.div2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
testNodeList("NodeList[index]", {
|
||||||
|
initial(list) {
|
||||||
|
assert_equals(list[0], undefined);
|
||||||
|
},
|
||||||
|
afterInsertion(list, nodes) {
|
||||||
|
assert_equals(list[0], nodes.div1);
|
||||||
|
assert_equals(list[1], nodes.p);
|
||||||
|
assert_equals(list[2], nodes.div2);
|
||||||
|
},
|
||||||
|
afterRemoval(list, nodes) {
|
||||||
|
assert_equals(list[0], nodes.p);
|
||||||
|
assert_equals(list[1], nodes.div2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
testNodeList("NodeList ownPropertyNames", {
|
||||||
|
initial(list) {
|
||||||
|
assert_object_equals(Object.getOwnPropertyNames(list), []);
|
||||||
|
},
|
||||||
|
afterInsertion(list) {
|
||||||
|
assert_object_equals(Object.getOwnPropertyNames(list), ["0", "1", "2"]);
|
||||||
|
},
|
||||||
|
afterRemoval(list) {
|
||||||
|
assert_object_equals(Object.getOwnPropertyNames(list), ["0", "1"]);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
|
@ -18,7 +18,7 @@ async_test(t => {
|
||||||
+ '/resource-timing/resources/multi_redirect.py?';
|
+ '/resource-timing/resources/multi_redirect.py?';
|
||||||
destUrl += 'page_origin=' + get_host_info().HTTP_ORIGIN;
|
destUrl += 'page_origin=' + get_host_info().HTTP_ORIGIN;
|
||||||
destUrl += '&cross_origin=' + get_host_info().HTTP_REMOTE_ORIGIN;
|
destUrl += '&cross_origin=' + get_host_info().HTTP_REMOTE_ORIGIN;
|
||||||
destUrl += '&final_resource=' + '/images/blue.png';
|
destUrl += '&final_resource=' + '/element-timing/resources/circle.svg';
|
||||||
destUrl += '&timing_allow=1';
|
destUrl += '&timing_allow=1';
|
||||||
destUrl += '&tao_steps=';
|
destUrl += '&tao_steps=';
|
||||||
for (let taoSteps=0; taoSteps < 4; taoSteps++) {
|
for (let taoSteps=0; taoSteps < 4; taoSteps++) {
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Timing-Allow-Origin: *
|
|
@ -0,0 +1,9 @@
|
||||||
|
spec: https://mikewest.github.io/corpp/
|
||||||
|
suggested_reviewers:
|
||||||
|
- mikewest
|
||||||
|
- jugglinmike
|
||||||
|
- arturjanc
|
||||||
|
- lweichselbaum
|
||||||
|
- hemeryar
|
||||||
|
- ParisMeuleman
|
||||||
|
- valenting
|
|
@ -0,0 +1,9 @@
|
||||||
|
spec: https://gist.github.com/annevk/6f2dd8c79c77123f39797f6bdac43f3e
|
||||||
|
suggested_reviewers:
|
||||||
|
- mikewest
|
||||||
|
- jugglinmike
|
||||||
|
- arturjanc
|
||||||
|
- lweichselbaum
|
||||||
|
- hemeryar
|
||||||
|
- ParisMeuleman
|
||||||
|
- valenting
|
|
@ -5,20 +5,25 @@
|
||||||
<script src="/common/utils.js"></script> <!-- Use token() to allow running tests in parallel -->
|
<script src="/common/utils.js"></script> <!-- Use token() to allow running tests in parallel -->
|
||||||
<div id=log>
|
<div id=log>
|
||||||
<script>
|
<script>
|
||||||
async_test(t => {
|
[
|
||||||
const frame = document.createElement("iframe");
|
"allow-popups allow-scripts allow-same-origin",
|
||||||
const channel = new BroadcastChannel(token());
|
"allow-popups allow-scripts",
|
||||||
channel.onmessage = t.unreached_func("A COOP popup was created from a sandboxed frame");
|
].forEach(sandboxValue => {
|
||||||
t.add_cleanup(() => frame.remove());
|
async_test(t => {
|
||||||
frame.sandbox = "allow-popups allow-scripts allow-same-origin";
|
const frame = document.createElement("iframe");
|
||||||
frame.srcdoc = `<script>
|
const channel = new BroadcastChannel(token());
|
||||||
const popup = window.open("resources/coop-coep.py?coop=same-origin&coep=&channel=${channel.name}");
|
channel.onmessage = t.unreached_func("A COOP popup was created from a sandboxed frame");
|
||||||
<\/script>`;
|
t.add_cleanup(() => frame.remove());
|
||||||
document.body.append(frame);
|
frame.sandbox = sandboxValue;
|
||||||
window.onload = t.step_func(() => {
|
frame.srcdoc = `<script>
|
||||||
t.step_timeout(() => {
|
const popup = window.open("resources/coop-coep.py?coop=same-origin&coep=&channel=${channel.name}");
|
||||||
t.done()
|
<\/script>`;
|
||||||
}, 1500);
|
document.body.append(frame);
|
||||||
});
|
addEventListener('load', t.step_func(() => {
|
||||||
|
t.step_timeout(() => {
|
||||||
|
t.done()
|
||||||
|
}, 1500);
|
||||||
|
}));
|
||||||
|
}, `<iframe sandbox="${sandboxValue}"> ${document.title}`);
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
<!doctype html>
|
||||||
|
<meta http-equiv="Cross-Origin-Opener-Policy" content="same-origin"><!-- should not be supported -->
|
||||||
|
<meta charset=utf-8>
|
||||||
|
<script src=/resources/testharness.js></script>
|
||||||
|
<script src=/resources/testharnessreport.js></script>
|
||||||
|
<script src="/common/get-host-info.sub.js"></script>
|
||||||
|
<script src="resources/common.js"></script>
|
||||||
|
|
||||||
|
<div id=log></div>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
let tests = [
|
||||||
|
// popup Origin, popup COOP, expect opener
|
||||||
|
[SAME_ORIGIN, "", true],
|
||||||
|
];
|
||||||
|
|
||||||
|
run_coop_tests("same-origin", tests);
|
||||||
|
|
||||||
|
</script>
|
|
@ -18,7 +18,7 @@
|
||||||
let t = async_test("Image width and height attributes are used to infer aspect-ratio");
|
let t = async_test("Image width and height attributes are used to infer aspect-ratio");
|
||||||
function assert_ratio(img, expected) {
|
function assert_ratio(img, expected) {
|
||||||
let epsilon = 0.001;
|
let epsilon = 0.001;
|
||||||
assert_approx_equals(parseInt(getComputedStyle(img).width, 10) / parseInt(getComputedStyle(img).height, 10), expected, epsilon);
|
assert_approx_equals(parseFloat(getComputedStyle(img).width, 10) / parseFloat(getComputedStyle(img).height, 10), expected, epsilon);
|
||||||
}
|
}
|
||||||
// Create and append a new image and immediately check the ratio.
|
// Create and append a new image and immediately check the ratio.
|
||||||
// This is not racy because the spec requires the user agent to queue a task:
|
// This is not racy because the spec requires the user agent to queue a task:
|
||||||
|
@ -53,6 +53,6 @@ onload = t.step_func_done(function() {
|
||||||
assert_ratio(images[1], 2.0); // 2.0 is the original aspect ratio of green.png
|
assert_ratio(images[1], 2.0); // 2.0 is the original aspect ratio of green.png
|
||||||
assert_equals(getComputedStyle(images[2]).height, "0px"); // aspect-ratio doesn't override intrinsic size of images that don't have any src.
|
assert_equals(getComputedStyle(images[2]).height, "0px"); // aspect-ratio doesn't override intrinsic size of images that don't have any src.
|
||||||
assert_equals(getComputedStyle(images[3]).height, getComputedStyle(images[4]).height); // aspect-ratio doesn't override intrinsic size of error images.
|
assert_equals(getComputedStyle(images[3]).height, getComputedStyle(images[4]).height); // aspect-ratio doesn't override intrinsic size of error images.
|
||||||
assert_ratio(images[5], 1.266); // 1.266 is the original aspect ratio of blue.png
|
assert_ratio(images[5], 133/106); // The original aspect ratio of blue.png
|
||||||
});
|
});
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -1925,6 +1925,10 @@ interface mixin GlobalEventHandlers {
|
||||||
attribute EventHandler ontoggle;
|
attribute EventHandler ontoggle;
|
||||||
attribute EventHandler onvolumechange;
|
attribute EventHandler onvolumechange;
|
||||||
attribute EventHandler onwaiting;
|
attribute EventHandler onwaiting;
|
||||||
|
attribute EventHandler onwebkitanimationend;
|
||||||
|
attribute EventHandler onwebkitanimationiteration;
|
||||||
|
attribute EventHandler onwebkitanimationstart;
|
||||||
|
attribute EventHandler onwebkittransitionend;
|
||||||
};
|
};
|
||||||
|
|
||||||
interface mixin WindowEventHandlers {
|
interface mixin WindowEventHandlers {
|
||||||
|
|
|
@ -47,7 +47,7 @@ typedef (DOMString or BufferSource or NDEFMessageInit) NDEFMessageSource;
|
||||||
interface NDEFWriter {
|
interface NDEFWriter {
|
||||||
constructor();
|
constructor();
|
||||||
|
|
||||||
Promise<void> push(NDEFMessageSource message, optional NDEFPushOptions options={});
|
Promise<void> write(NDEFMessageSource message, optional NDEFWriteOptions options={});
|
||||||
};
|
};
|
||||||
|
|
||||||
[SecureContext, Exposed=Window]
|
[SecureContext, Exposed=Window]
|
||||||
|
@ -73,19 +73,12 @@ dictionary NDEFReadingEventInit : EventInit {
|
||||||
required NDEFMessageInit message;
|
required NDEFMessageInit message;
|
||||||
};
|
};
|
||||||
|
|
||||||
dictionary NDEFPushOptions {
|
dictionary NDEFWriteOptions {
|
||||||
NDEFPushTarget target = "any";
|
|
||||||
boolean ignoreRead = true;
|
boolean ignoreRead = true;
|
||||||
boolean overwrite = true;
|
boolean overwrite = true;
|
||||||
AbortSignal? signal;
|
AbortSignal? signal;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum NDEFPushTarget {
|
|
||||||
"tag",
|
|
||||||
"peer",
|
|
||||||
"any"
|
|
||||||
};
|
|
||||||
|
|
||||||
dictionary NDEFScanOptions {
|
dictionary NDEFScanOptions {
|
||||||
USVString id;
|
USVString id;
|
||||||
USVString recordType;
|
USVString recordType;
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
<!DOCTYPE HTML>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<title>This test validates LargestContenfulPaint information for cross-origin redirect chain images.</title>
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script src="resources/largest-contentful-paint-helpers.js"></script>
|
||||||
|
<script src=/common/get-host-info.sub.js></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<script>
|
||||||
|
async_test(t => {
|
||||||
|
if (!window.LargestContentfulPaint) {
|
||||||
|
assert_unreached("LargestContentfulPaint is not implemented");
|
||||||
|
}
|
||||||
|
let destUrl = get_host_info().HTTP_REMOTE_ORIGIN
|
||||||
|
+ '/resource-timing/resources/multi_redirect.py?';
|
||||||
|
destUrl += 'page_origin=' + get_host_info().HTTP_ORIGIN;
|
||||||
|
destUrl += '&cross_origin=' + get_host_info().HTTP_REMOTE_ORIGIN;
|
||||||
|
destUrl += '&final_resource=' + '/element-timing/resources/circle.svg';
|
||||||
|
destUrl += '&timing_allow=1';
|
||||||
|
destUrl += '&tao_steps=';
|
||||||
|
|
||||||
|
const image = document.createElement('img');
|
||||||
|
image.src = destUrl + '0';
|
||||||
|
image.setAttribute('id', 'id');
|
||||||
|
document.body.appendChild(image);
|
||||||
|
|
||||||
|
let numObserved = 0;
|
||||||
|
let beforeLoad = performance.now();
|
||||||
|
|
||||||
|
new PerformanceObserver(t.step_func(entries => {
|
||||||
|
assert_equals(entries.getEntries().length, 1);
|
||||||
|
const entry = entries.getEntries()[0];
|
||||||
|
const options = numObserved === 3 ? [] : ['renderTimeIs0'];
|
||||||
|
checkImage(entry, destUrl + numObserved, 'id', 200 * 200, beforeLoad, options);
|
||||||
|
numObserved++;
|
||||||
|
if (numObserved === 4)
|
||||||
|
t.done();
|
||||||
|
else {
|
||||||
|
// Change the image to trigger a new LCP entry.
|
||||||
|
const img = document.getElementById('id');
|
||||||
|
image.src = destUrl + numObserved;
|
||||||
|
beforeLoad = performance.now();
|
||||||
|
}
|
||||||
|
})).observe({type: 'largest-contentful-paint'});
|
||||||
|
}, 'Cross-origin image without TAO should not have its renderTime set, with full TAO it should.');
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
<!doctype html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<script>
|
||||||
|
const test_object_entry = (url, type, test_name) => {
|
||||||
|
promise_test(t => {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
performance.clearResourceTimings();
|
||||||
|
const el = document.createElement("object");
|
||||||
|
const po = new PerformanceObserver(t.step_func(e => {
|
||||||
|
const entries = e.getEntriesByType("resource");
|
||||||
|
assert_greater_than(entries.length, 0, "Got a performance entry");
|
||||||
|
|
||||||
|
assert_true(entries[0].name.includes(url), "Performance resource timing entry has the right name");
|
||||||
|
po.disconnect();
|
||||||
|
resolve();
|
||||||
|
}));
|
||||||
|
po.observe({type: "resource"});
|
||||||
|
el.data = url;
|
||||||
|
if (type) {
|
||||||
|
el.type = type;
|
||||||
|
}
|
||||||
|
el.style = "width: 0px; height: 0px;";
|
||||||
|
document.body.appendChild(el);
|
||||||
|
|
||||||
|
el.onload = el.onerror = t.step_timeout(() => {
|
||||||
|
assert_unreached("No performance entry was observed");
|
||||||
|
reject();
|
||||||
|
}, 500);
|
||||||
|
});
|
||||||
|
}, test_name);
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
|
test_object_entry("resources/status-code.py?status=404&type=none", null, "Test that an navigation object with a 404 response displays an entry");
|
||||||
|
test_object_entry("resources/status-code.py?status=200&type=none", null, "Test that an navigation object with a 200 response displays an entry");
|
||||||
|
test_object_entry("resources/status-code.py?status=404&type=img", "image/png", "Test that an image object with a 404 response displays an entry");
|
||||||
|
|
||||||
|
</script>
|
|
@ -843,7 +843,7 @@ def create_parser():
|
||||||
help="Output machine-readable JSON format")
|
help="Output machine-readable JSON format")
|
||||||
parser.add_argument("--markdown", action="store_true",
|
parser.add_argument("--markdown", action="store_true",
|
||||||
help="Output markdown")
|
help="Output markdown")
|
||||||
parser.add_argument("--repo-root", help="The WPT directory. Use this"
|
parser.add_argument("--repo-root", help="The WPT directory. Use this "
|
||||||
"option if the lint script exists outside the repository")
|
"option if the lint script exists outside the repository")
|
||||||
parser.add_argument("--ignore-glob", help="Additional file glob to ignore.")
|
parser.add_argument("--ignore-glob", help="Additional file glob to ignore.")
|
||||||
parser.add_argument("--all", action="store_true", help="If no paths are passed, try to lint the whole "
|
parser.add_argument("--all", action="store_true", help="If no paths are passed, try to lint the whole "
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue