mirror of
https://github.com/servo/servo.git
synced 2025-08-04 13:10:20 +01:00
Update web-platform-tests to revision 1b2893a628c429d144e2b5f7eb5d93855127cacb
This commit is contained in:
parent
7f12ee6467
commit
382c7ac026
66 changed files with 421 additions and 229 deletions
|
@ -1,8 +0,0 @@
|
||||||
[url-charset.window.html]
|
|
||||||
expected: TIMEOUT
|
|
||||||
[Blob charset should override any auto-detected charset.]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
||||||
[Blob charset should override <meta charset>.]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Opening a blob URL in a new window immediately before revoking it works.]
|
[Opening a blob URL in a new window immediately before revoking it works.]
|
||||||
expected: FAIL
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Fetching a blob URL immediately before revoking it works in an iframe.]
|
[Fetching a blob URL immediately before revoking it works in an iframe.]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[hit-test-floats-004.html]
|
||||||
|
[Miss float below something else]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[hit-test-floats-005.html]
|
||||||
|
[Miss clipped float]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[hit-test-anonymous-block.html]
|
||||||
|
[Hit test beside line of text inside anonymous block]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[image-orientation-none-cross-origin-canvas.html]
|
||||||
|
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
||||||
|
[image-orientation-none-cross-origin.html]
|
||||||
|
expected: FAIL
|
|
@ -1,4 +0,0 @@
|
||||||
[CaretPosition-001.html]
|
|
||||||
[Element at (400, 100)]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -2,6 +2,3 @@
|
||||||
[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
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[elementsFromPoint-invalid-cases.html]
|
||||||
|
[The root element is the last element returned for otherwise empty queries within the viewport]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[matchMedia-display-none-iframe.html]
|
||||||
|
expected: ERROR
|
|
@ -0,0 +1,2 @@
|
||||||
|
[HTMLMediaElement.html]
|
||||||
|
expected: TIMEOUT
|
|
@ -315,18 +315,12 @@
|
||||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: */* text/html]
|
|
||||||
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;x=" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html */*]
|
[<iframe>: separate response Content-Type: text/html */*]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||||
|
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,6 +11,6 @@
|
||||||
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[X-Content-Type-Options%3A%20%40%23%24%23%25%25%26%5E%26%5E*()()11!%2Cnosniff]
|
[X-Content-Type-Options%3A%20'NosniFF']
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[traverse_the_history_3.html]
|
|
||||||
[Multiple history traversals, last would be aborted]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[traverse_the_history_4.html]
|
|
||||||
[Multiple history traversals, last would be aborted]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[creating_browsing_context_test_01.html]
|
||||||
|
[first argument: absolute url]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
[embedded-opener-remove-frame.html]
|
[embedded-opener-remove-frame.html]
|
||||||
expected: TIMEOUT
|
|
||||||
[opener of discarded nested browsing context]
|
[opener of discarded nested browsing context]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[opener of discarded auxiliary browsing context]
|
[opener of discarded auxiliary browsing context]
|
||||||
expected: TIMEOUT
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -171,6 +171,3 @@
|
||||||
[XHTML img usemap="#hash-id"]
|
[XHTML img usemap="#hash-id"]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[HTML (standards) IMG usemap="no-hash-name"]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
[iframe_sandbox_popups_escaping-2.html]
|
[iframe_sandbox_popups_escaping-2.html]
|
||||||
expected: TIMEOUT
|
expected: CRASH
|
||||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
[iframe_sandbox_popups_nonescaping-1.html]
|
[iframe_sandbox_popups_nonescaping-1.html]
|
||||||
expected: CRASH
|
expected: TIMEOUT
|
||||||
[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: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
[iframe_sandbox_popups_nonescaping-2.html]
|
[iframe_sandbox_popups_nonescaping-2.html]
|
||||||
expected: CRASH
|
expected: TIMEOUT
|
||||||
[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: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[module-delayed.html]
|
|
||||||
[async document.write in a module]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[module-static-import-delayed.html]
|
||||||
|
[document.write in an imported module]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
[realtimeanalyser-fft-scaling.html]
|
[realtimeanalyser-fft-scaling.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[X 2048-point FFT peak position is not equal to 64. Got 0.]
|
[X 2048-point FFT peak position is not equal to 64. Got 0.]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
[Worker-constructor.html]
|
|
||||||
expected: ERROR
|
|
|
@ -1,7 +1,8 @@
|
||||||
[shared-worker-in-data-url-context.window.html]
|
[shared-worker-in-data-url-context.window.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[Create a shared worker in a data url frame]
|
[Create a shared worker in a data url frame]
|
||||||
expected: FAIL
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Create a data url shared worker in a data url frame]
|
[Create a data url shared worker in a data url frame]
|
||||||
expected: FAIL
|
expected: NOTRUN
|
||||||
|
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
[url-charset.window.html]
|
|
||||||
expected: TIMEOUT
|
|
||||||
[Blob charset should override any auto-detected charset.]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
||||||
[Blob charset should override <meta charset>.]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[Opening a blob URL in a new window immediately before revoking it works.]
|
[Opening a blob URL in a new window immediately before revoking it works.]
|
||||||
expected: FAIL
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Opening a blob URL in a noopener about:blank window immediately before revoking it works.]
|
[Opening a blob URL in a noopener about:blank window immediately before revoking it works.]
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
|
|
|
@ -121083,7 +121083,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"background-attachment-350.html": [
|
"background-attachment-350.html": [
|
||||||
"2323293a96b18e373e26ec3f4406c4a5fb1f7417",
|
"fa63370a43cd575f54fd0004d4436d551144026c",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
|
@ -153493,6 +153493,64 @@
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"image-orientation-none-cross-origin-canvas.html": [
|
||||||
|
"4d370e8e189667368035ecb7e65ba9cc03ba982f",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-images/image-orientation/reference/image-orientation-none-cross-origin-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"fuzzy": [
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
10,
|
||||||
|
10
|
||||||
|
],
|
||||||
|
[
|
||||||
|
100,
|
||||||
|
100
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"image-orientation-none-cross-origin.html": [
|
||||||
|
"6629f78e5b2923a41e49b4236a4c8b7d17abb2f1",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-images/image-orientation/reference/image-orientation-none-cross-origin-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{
|
||||||
|
"fuzzy": [
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
10,
|
||||||
|
10
|
||||||
|
],
|
||||||
|
[
|
||||||
|
100,
|
||||||
|
100
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
],
|
||||||
"image-orientation-none-image-document.html": [
|
"image-orientation-none-image-document.html": [
|
||||||
"d333b5f4f578a17915c234d905a4978729d55c8e",
|
"d333b5f4f578a17915c234d905a4978729d55c8e",
|
||||||
[
|
[
|
||||||
|
@ -159365,20 +159423,7 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
"test-mask.html": [
|
|
||||||
"b1e21566e3f2072251f0093a4d08e9688991b73f",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
[
|
|
||||||
[
|
|
||||||
"/css/css-masking/test-mask-ref.html",
|
|
||||||
"=="
|
|
||||||
]
|
|
||||||
],
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"css-multicol": {
|
"css-multicol": {
|
||||||
"always-balancing-before-column-span.html": [
|
"always-balancing-before-column-span.html": [
|
||||||
|
@ -310079,6 +310124,14 @@
|
||||||
"5192f5c35aa6c0055594b662bc18f12feb453e87",
|
"5192f5c35aa6c0055594b662bc18f12feb453e87",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"image-orientation-none-cross-origin-canvas-ref.html": [
|
||||||
|
"4f9bc74620d8be7d94b8639a51764e04c2c5e685",
|
||||||
|
[]
|
||||||
|
],
|
||||||
|
"image-orientation-none-cross-origin-ref.html": [
|
||||||
|
"3e6962184ec3dcb75cd08a440017ed84161fdb4a",
|
||||||
|
[]
|
||||||
|
],
|
||||||
"image-orientation-none-image-document-ref.html": [
|
"image-orientation-none-image-document-ref.html": [
|
||||||
"90eaeaa3da839b111098da9e6f9e4754fe05d2b2",
|
"90eaeaa3da839b111098da9e6f9e4754fe05d2b2",
|
||||||
[]
|
[]
|
||||||
|
@ -311294,11 +311347,7 @@
|
||||||
"de30887ea358ece8e0c1cd593d3d7c66bc744bd4",
|
"de30887ea358ece8e0c1cd593d3d7c66bc744bd4",
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
},
|
}
|
||||||
"test-mask-ref.html": [
|
|
||||||
"938235acbd36309fb969c55f161239bcd5ab969e",
|
|
||||||
[]
|
|
||||||
]
|
|
||||||
},
|
},
|
||||||
"css-multicol": {
|
"css-multicol": {
|
||||||
"META.yml": [
|
"META.yml": [
|
||||||
|
@ -425579,7 +425628,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"ParentNode-replaceChildren.html": [
|
"ParentNode-replaceChildren.html": [
|
||||||
"b1c1008284bbf999d5c61d971b6c8b10704e16e9",
|
"8f2fda9d99c154f7b8eb08aefe0604bf37cb4a37",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -465653,7 +465702,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"reporting-to-endpoint.https.html": [
|
"reporting-to-endpoint.https.html": [
|
||||||
"416732497bdd58f654cbfd883721352a8c7ecba7",
|
"7294bdeafab2c32512983954ed20d617a1418f29",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[hit-test-floats-004.html]
|
||||||
|
[Miss float below something else]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[hit-test-floats-005.html]
|
||||||
|
[Miss clipped float]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[hit-test-anonymous-block.html]
|
||||||
|
[Hit test beside line of text inside anonymous block]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[image-orientation-none-cross-origin-canvas.html]
|
||||||
|
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
||||||
|
[image-orientation-none-cross-origin.html]
|
||||||
|
expected: FAIL
|
|
@ -1,4 +0,0 @@
|
||||||
[CaretPosition-001.html]
|
|
||||||
[Element at (400, 100)]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -2,6 +2,3 @@
|
||||||
[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
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[elementsFromPoint-invalid-cases.html]
|
||||||
|
[The root element is the last element returned for otherwise empty queries within the viewport]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[matchMedia-display-none-iframe.html]
|
||||||
|
expected: ERROR
|
|
@ -0,0 +1,2 @@
|
||||||
|
[HTMLMediaElement.html]
|
||||||
|
expected: TIMEOUT
|
|
@ -315,18 +315,12 @@
|
||||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: */* text/html]
|
|
||||||
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;x=" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html */*]
|
[<iframe>: separate response Content-Type: text/html */*]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||||
|
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,6 +11,6 @@
|
||||||
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[X-Content-Type-Options%3A%20%40%23%24%23%25%25%26%5E%26%5E*()()11!%2Cnosniff]
|
[X-Content-Type-Options%3A%20'NosniFF']
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[traverse_the_history_3.html]
|
|
||||||
[Multiple history traversals, last would be aborted]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[traverse_the_history_4.html]
|
|
||||||
[Multiple history traversals, last would be aborted]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[creating_browsing_context_test_01.html]
|
||||||
|
[first argument: absolute url]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
[embedded-opener-remove-frame.html]
|
[embedded-opener-remove-frame.html]
|
||||||
expected: TIMEOUT
|
|
||||||
[opener and "removed" embedded documents]
|
[opener and "removed" embedded documents]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
@ -7,5 +6,5 @@
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[opener of discarded auxiliary browsing context]
|
[opener of discarded auxiliary browsing context]
|
||||||
expected: TIMEOUT
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -172,6 +172,3 @@
|
||||||
[XHTML img usemap="http://example.org/#garbage-before-hash-id"]
|
[XHTML img usemap="http://example.org/#garbage-before-hash-id"]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[HTML (standards) IMG usemap="no-hash-name"]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
[iframe_sandbox_popups_escaping-2.html]
|
[iframe_sandbox_popups_escaping-2.html]
|
||||||
expected: TIMEOUT
|
expected: CRASH
|
||||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||||
expected: TIMEOUT
|
expected: TIMEOUT
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[iframe_sandbox_popups_nonescaping-1.html]
|
[iframe_sandbox_popups_nonescaping-1.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
expected: CRASH
|
expected: TIMEOUT
|
||||||
[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: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
[iframe_sandbox_popups_nonescaping-2.html]
|
[iframe_sandbox_popups_nonescaping-2.html]
|
||||||
type: testharness
|
type: testharness
|
||||||
expected: CRASH
|
expected: TIMEOUT
|
||||||
[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: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[module-delayed.html]
|
|
||||||
[async document.write in a module]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[module-static-import-delayed.html]
|
||||||
|
[document.write in an imported module]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
[realtimeanalyser-fft-scaling.html]
|
[realtimeanalyser-fft-scaling.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[X 2048-point FFT peak position is not equal to 64. Got 0.]
|
[X 2048-point FFT peak position is not equal to 64. Got 0.]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
[Worker-constructor.html]
|
|
||||||
expected: ERROR
|
|
|
@ -1,7 +1,8 @@
|
||||||
[shared-worker-in-data-url-context.window.html]
|
[shared-worker-in-data-url-context.window.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[Create a shared worker in a data url frame]
|
[Create a shared worker in a data url frame]
|
||||||
expected: FAIL
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Create a data url shared worker in a data url frame]
|
[Create a data url shared worker in a data url frame]
|
||||||
expected: FAIL
|
expected: NOTRUN
|
||||||
|
|
||||||
|
|
|
@ -43,21 +43,22 @@
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
|
|
||||||
+-----------------------+
|
(0px, 0px) (200px, 0px)
|
||||||
|+----------+ |
|
+.......................+
|
||||||
|| +------+ | |
|
|+..........+ |
|
||||||
|| | red | | | <-- bottom right of scrolling box
|
|| +......+ | |
|
||||||
|
|| | red | | | <== bottom right of scrolling box
|
||||||
|| |square| | | when background-image dimensions
|
|| |square| | | when background-image dimensions
|
||||||
|| | | | | are the same as the element's
|
|| | | | | are the same as the element's
|
||||||
|| +------+ | | viewport dimensions
|
|| +......+ | | viewport dimensions
|
||||||
+----------+ |
|
+..........+ |
|
||||||
| |
|
| |
|
||||||
| |
|
| +......+|
|
||||||
| +------+|
|
| | red || <== bottom right of scrollable area
|
||||||
| | red || <-- bottom right of scrollable area
|
|
||||||
| |square|| which is outside of the viewport
|
| |square|| which is outside of the viewport
|
||||||
| | || area and which is clipped due
|
| | || area and which is clipped due
|
||||||
| +------+| to 'overflow: hidden'
|
| +......+| to 'overflow: hidden'
|
||||||
+-----------------------+
|
+.......................+
|
||||||
|
(0px, 200px) (200px, 200px)
|
||||||
|
|
||||||
-->
|
-->
|
||||||
|
|
|
@ -0,0 +1,79 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Images Module Level 3: image-orientation: none</title>
|
||||||
|
<script src=/common/get-host-info.sub.js></script>
|
||||||
|
<link rel="author" title="Noam Rosenthal" href="mailto:noam@webkit.org">
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/5165">
|
||||||
|
<link rel="match" href="reference/image-orientation-none-cross-origin-ref.html">
|
||||||
|
<meta name=fuzzy content="10;100">
|
||||||
|
<style>
|
||||||
|
img {display: none}
|
||||||
|
canvas {
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<script>
|
||||||
|
const src1 = 'support/exif-orientation-1-ul.jpg';
|
||||||
|
const src2 = 'support/exif-orientation-3-lr.jpg';
|
||||||
|
function toCors(src) {
|
||||||
|
return src.replace(new URL(src).origin, get_host_info().HTTP_REMOTE_ORIGIN)
|
||||||
|
}
|
||||||
|
function createImage({cors, src, orientation, shouldBeRotated}) {
|
||||||
|
const img = document.createElement('img');
|
||||||
|
img.src = src
|
||||||
|
if (cors)
|
||||||
|
img.src = toCors(img.src)
|
||||||
|
img.style.imageOrientation = orientation
|
||||||
|
img.style.display = 'none'
|
||||||
|
img.dataset.shouldBeRotated = shouldBeRotated
|
||||||
|
document.body.appendChild(img)
|
||||||
|
return img
|
||||||
|
}
|
||||||
|
|
||||||
|
window.onload = () => {
|
||||||
|
const images = [
|
||||||
|
createImage({cors: true, src: src2, orientation: 'from-image', shouldBeRotated: true}),
|
||||||
|
createImage({cors: true, src: src2, orientation: 'none', shouldBeRotated: true}),
|
||||||
|
createImage({cors: false, src: src2, orientation: 'from-image', shouldBeRotated: true}),
|
||||||
|
createImage({cors: true, src: src1, orientation: 'from-image', shouldBeRotated: false}),
|
||||||
|
createImage({cors: true, src: src1, orientation: 'none', shouldBeRotated: false}),
|
||||||
|
createImage({cors: false, src: src1, orientation: 'from-image', shouldBeRotated: false}),
|
||||||
|
createImage({cors: false, src: src1, orientation: 'none', shouldBeRotated: false}),
|
||||||
|
createImage({cors: false, src: src2, orientation: 'none', shouldBeRotated: false}),
|
||||||
|
]
|
||||||
|
|
||||||
|
const dimension = 1
|
||||||
|
|
||||||
|
images.forEach(image => {
|
||||||
|
const canvas = document.createElement('canvas')
|
||||||
|
canvas.width = canvas.height = dimension
|
||||||
|
const ctx = canvas.getContext('2d')
|
||||||
|
const sx = image.dataset.shouldBeRotated === 'true' ? image.width * .8 : 0
|
||||||
|
const sy = image.dataset.shouldBeRotated === 'true' ? image.height * .8 : 0
|
||||||
|
ctx.drawImage(image, sx, sy, 1, 1, 0, 0, dimension, dimension)
|
||||||
|
document.body.appendChild(canvas)
|
||||||
|
})
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p>You should see 8 green rectangles, no red.</p>
|
||||||
|
</body>
|
||||||
|
<script>
|
||||||
|
[src1, src2].forEach(src => {
|
||||||
|
const img = document.createElement('img')
|
||||||
|
img.src = src
|
||||||
|
const imgCors = document.createElement('img')
|
||||||
|
imgCors.src = src
|
||||||
|
imgCors.src = toCors(imgCors.src)
|
||||||
|
document.body.appendChild(img)
|
||||||
|
document.body.appendChild(imgCors)
|
||||||
|
})
|
||||||
|
</script>
|
||||||
|
</html>
|
|
@ -0,0 +1,37 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Images Module Level 3: image-orientation: none</title>
|
||||||
|
<script src=/common/get-host-info.sub.js></script>
|
||||||
|
<link rel="author" title="Noam Rosenthal" href="mailto:noam@webkit.org">
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/5165">
|
||||||
|
<link rel="match" href="reference/image-orientation-none-cross-origin-ref.html">
|
||||||
|
<meta name=fuzzy content="10;100">
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
overflow: hidden;
|
||||||
|
image-orientation: none;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p>The following images should not be identical.</p>
|
||||||
|
<p>The image should not rotate respecting their EXIF orientation because
|
||||||
|
image-orientation: none is specified.</p>
|
||||||
|
<div><img src="support/exif-orientation-3-lr.jpg"/></div>
|
||||||
|
|
||||||
|
<p>This image should rotate respecting their EXIF orientation because
|
||||||
|
image-orientation: none should be effectively ignored for opaque (cross-origin) images.</p>
|
||||||
|
<div><img id="corsImage" src="support/exif-orientation-3-lr.jpg"/></div>
|
||||||
|
<script>
|
||||||
|
const img = document.getElementById('corsImage')
|
||||||
|
img.src = img.src.replace(new URL(img.src).origin, get_host_info().HTTP_REMOTE_ORIGIN)
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -0,0 +1,44 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Images Module Level 3: image-orientation: none</title>
|
||||||
|
<link rel="author" title="Noam Rosenthal" href="mailto:noam@webkit.org">
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/5165">
|
||||||
|
<meta name=fuzzy content="10;100">
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
overflow: hidden;
|
||||||
|
image-orientation: none;
|
||||||
|
}
|
||||||
|
img {display: none}
|
||||||
|
canvas {
|
||||||
|
width: 100px;
|
||||||
|
height: 100px;
|
||||||
|
margin: 10px;
|
||||||
|
}
|
||||||
|
.no-orient { image-orientation: none; }
|
||||||
|
</style>
|
||||||
|
<body>
|
||||||
|
<p>You should see 8 green rectangles, no red.</p>
|
||||||
|
</body>
|
||||||
|
<script>
|
||||||
|
const img = document.createElement('img')
|
||||||
|
img.src = '../support/exif-orientation-1-ul.jpg'
|
||||||
|
|
||||||
|
document.body.appendChild(img)
|
||||||
|
|
||||||
|
const dimension = 5
|
||||||
|
window.onload = () => {
|
||||||
|
for (let i = 0; i < 8; ++i) {
|
||||||
|
const canvas = document.createElement('canvas')
|
||||||
|
canvas.width = canvas.height = dimension
|
||||||
|
const ctx = canvas.getContext('2d')
|
||||||
|
ctx.drawImage(img, 0, 0)
|
||||||
|
document.body.appendChild(canvas)
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
</html>
|
|
@ -0,0 +1,30 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<link rel="author" title="Noam Rosenthal" href="mailto:noam@webkit.org">
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/5165">
|
||||||
|
<meta name=fuzzy content="10;100">
|
||||||
|
<style>
|
||||||
|
body {
|
||||||
|
overflow: hidden;
|
||||||
|
image-orientation: none;
|
||||||
|
}
|
||||||
|
div {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100px;
|
||||||
|
vertical-align: top;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<p>The following images should not be identical.</p>
|
||||||
|
<p>The image should not rotate respecting their EXIF orientation because
|
||||||
|
image-orientation: none is specified.</p>
|
||||||
|
<div><img src="../support/exif-orientation-3-lr.jpg"/></div>
|
||||||
|
|
||||||
|
<p>This image should rotate respecting their EXIF orientation because
|
||||||
|
image-orientation: none should be effectively ignored for opaque (cross-origin) images.</p>
|
||||||
|
<div><img src="../support/exif-orientation-3-lr.jpg" style="image-orientation: from-image" /></div>
|
||||||
|
</body>
|
||||||
|
</html>
|
|
@ -1,11 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<title>CSS Masking: mask-repeat:round repeat;</title>
|
|
||||||
<link rel="author" title="Li Jun" href="mailto:64835173@qq.com">
|
|
||||||
<link rel="reviewer" title="Dirk Schulze" href="mailto:dschulze@adobe.com"><!-- 11-09-2013 @TestTWF Shenzhen -->
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<p>Test passes if there is a blue square and no red.</p>
|
|
||||||
<div style="width: 200px; height:200px; position: fixed; background-color:blue;"></div>
|
|
||||||
</body>
|
|
||||||
|
|
||||||
</html>
|
|
|
@ -1,26 +0,0 @@
|
||||||
<!DOCTYPE html>
|
|
||||||
<title>CSS Masking: mask-repeat:round repeat;</title>
|
|
||||||
<link rel="author" title="Li Jun" href="mailto:64835173@qq.com">
|
|
||||||
<link rel="reviewer" title="Dirk Schulze" href="mailto:dschulze@adobe.com"><!-- 11-09-2013 @TestTWF Shenzhen -->
|
|
||||||
<link rel="help" href="http://www.w3.org/TR/css-masking-1/#the-mask-repeat">
|
|
||||||
<link rel="match" href="test-mask-ref.html">
|
|
||||||
<meta name="assert" content="Test checks that the mask-repeart value "round" is working properly: it should scale to fit the whole area.">
|
|
||||||
<style>
|
|
||||||
.test {
|
|
||||||
width:200px;
|
|
||||||
height:200px;
|
|
||||||
white-space:normal;
|
|
||||||
background:blue;
|
|
||||||
mask-image:radial-gradient(black, black);
|
|
||||||
mask-repeat:round;
|
|
||||||
mask-size:100px 100px;
|
|
||||||
mask-box-image:none;
|
|
||||||
mask-origin:border;
|
|
||||||
};
|
|
||||||
</style>
|
|
||||||
<body>
|
|
||||||
<p>Test passes if there is a blue square and no red.</p>
|
|
||||||
<div style="width: 200px; height:200px; position: fixed; background-color:red;"></div>
|
|
||||||
<div class="test"></div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -40,6 +40,14 @@
|
||||||
assert_array_equals(parent.childNodes, [x]);
|
assert_array_equals(parent.childNodes, [x]);
|
||||||
}, `${nodeName}.replaceChildren() with only one element as an argument, on a parent having no child.`);
|
}, `${nodeName}.replaceChildren() with only one element as an argument, on a parent having no child.`);
|
||||||
|
|
||||||
|
test(() => {
|
||||||
|
const parent = node.cloneNode();
|
||||||
|
const child = document.createElement('test');
|
||||||
|
parent.appendChild(child);
|
||||||
|
parent.replaceChildren();
|
||||||
|
assert_array_equals(parent.childNodes, []);
|
||||||
|
}, `${nodeName}.replaceChildren() without any argument, on a parent having a child.`);
|
||||||
|
|
||||||
test(() => {
|
test(() => {
|
||||||
const parent = node.cloneNode();
|
const parent = node.cloneNode();
|
||||||
const child = document.createElement('test');
|
const child = document.createElement('test');
|
||||||
|
|
|
@ -26,27 +26,22 @@ function wait(ms) {
|
||||||
return new Promise(resolve => step_timeout(resolve, ms));
|
return new Promise(resolve => step_timeout(resolve, ms));
|
||||||
}
|
}
|
||||||
|
|
||||||
async function pollReports(endpoint, reports) {
|
async function fetchReports(endpoint) {
|
||||||
while (true) {
|
|
||||||
await wait(200);
|
|
||||||
const res = await fetch(`resources/report.py?endpoint=${endpoint}`, {cache: 'no-store'});
|
const res = await fetch(`resources/report.py?endpoint=${endpoint}`, {cache: 'no-store'});
|
||||||
if (res.status !== 200) {
|
if (res.status == 200) {
|
||||||
continue;
|
return await res.json();
|
||||||
}
|
|
||||||
for (const report of await res.json()) {
|
|
||||||
reports.push(report);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
return [];
|
||||||
}
|
}
|
||||||
|
|
||||||
const reports = [];
|
async function checkCorpReportExistence(endpoint, blockedUrl, contextUrl, destination, disposition) {
|
||||||
const reportsForReportOnly = [];
|
|
||||||
pollReports('endpoint', reports);
|
|
||||||
pollReports('report-only-endpoint', reportsForReportOnly);
|
|
||||||
|
|
||||||
function checkCorpReportExistence(reports, blockedUrl, contextUrl, destination, disposition) {
|
|
||||||
blockedUrl = new URL(blockedUrl, location).href;
|
blockedUrl = new URL(blockedUrl, location).href;
|
||||||
contextUrl = new URL(contextUrl, location).href;
|
contextUrl = new URL(contextUrl, location).href;
|
||||||
|
|
||||||
|
const timeout = 3000;
|
||||||
|
const retryDelay = 200;
|
||||||
|
for (let i = 0; i * retryDelay < timeout; i++) {
|
||||||
|
const reports = await fetchReports(endpoint);
|
||||||
for (const report of reports) {
|
for (const report of reports) {
|
||||||
if (report.type !== 'coep' || report.url !== contextUrl ||
|
if (report.type !== 'coep' || report.url !== contextUrl ||
|
||||||
report.body.type !== 'corp') {
|
report.body.type !== 'corp') {
|
||||||
|
@ -58,12 +53,19 @@ function checkCorpReportExistence(reports, blockedUrl, contextUrl, destination,
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
await wait(retryDelay);
|
||||||
|
}
|
||||||
assert_unreached(`A report whose blockedURL is ${blockedUrl} and url is ${contextUrl} is not found.`);
|
assert_unreached(`A report whose blockedURL is ${blockedUrl} and url is ${contextUrl} is not found.`);
|
||||||
}
|
}
|
||||||
|
|
||||||
function checkNavigationReportExistence(reports, blockedUrl, contextUrl, disposition) {
|
async function checkNavigationReportExistence(endpoint, blockedUrl, contextUrl, disposition) {
|
||||||
blockedUrl = new URL(blockedUrl, location).href;
|
blockedUrl = new URL(blockedUrl, location).href;
|
||||||
contextUrl = new URL(contextUrl, location).href;
|
contextUrl = new URL(contextUrl, location).href;
|
||||||
|
const timeout = 3000;
|
||||||
|
const retryDelay = 200;
|
||||||
|
for (let i = 0; i * retryDelay < timeout; i++) {
|
||||||
|
const reports = await fetchReports(endpoint);
|
||||||
|
|
||||||
for (const report of reports) {
|
for (const report of reports) {
|
||||||
if (report.type !== 'coep' || report.url !== contextUrl ||
|
if (report.type !== 'coep' || report.url !== contextUrl ||
|
||||||
report.body.type !== 'navigation') {
|
report.body.type !== 'navigation') {
|
||||||
|
@ -74,6 +76,8 @@ function checkNavigationReportExistence(reports, blockedUrl, contextUrl, disposi
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
await wait(retryDelay);
|
||||||
|
}
|
||||||
assert_unreached(`A report whose blockedURL is ${blockedUrl} and url is ${contextUrl} is not found.`);
|
assert_unreached(`A report whose blockedURL is ${blockedUrl} and url is ${contextUrl} is not found.`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -93,12 +97,9 @@ promise_test(async t => {
|
||||||
// header, so it is blocked.
|
// header, so it is blocked.
|
||||||
iframe.contentWindow.fetch(url, init).catch(() => {});
|
iframe.contentWindow.fetch(url, init).catch(() => {});
|
||||||
|
|
||||||
// Wait 3 seconds for reports to settle.
|
await checkCorpReportExistence('endpoint', url, iframe.src, '', 'enforce');
|
||||||
await wait(3000);
|
await checkCorpReportExistence(
|
||||||
|
'report-only-endpoint', url, iframe.src, '', 'reporting');
|
||||||
checkCorpReportExistence(reports, url, iframe.src, '', 'enforce');
|
|
||||||
checkCorpReportExistence(
|
|
||||||
reportsForReportOnly, url, iframe.src, '', 'reporting');
|
|
||||||
}, 'subresource CORP');
|
}, 'subresource CORP');
|
||||||
|
|
||||||
promise_test(async t => {
|
promise_test(async t => {
|
||||||
|
@ -124,12 +125,10 @@ promise_test(async t => {
|
||||||
// header, so it is blocked.
|
// header, so it is blocked.
|
||||||
attachFrame(url);
|
attachFrame(url);
|
||||||
|
|
||||||
// Wait 3 seconds for reports to settle.
|
await checkCorpReportExistence(
|
||||||
await wait(3000);
|
'endpoint', url, iframe.src, 'iframe', 'enforce');
|
||||||
|
await checkCorpReportExistence(
|
||||||
checkCorpReportExistence(reports, url, iframe.src, 'iframe', 'enforce');
|
'report-only-endpoint', url, iframe.src, 'iframe', 'reporting');
|
||||||
checkCorpReportExistence(
|
|
||||||
reportsForReportOnly, url, iframe.src, 'iframe', 'reporting');
|
|
||||||
}, 'navigation CORP');
|
}, 'navigation CORP');
|
||||||
|
|
||||||
promise_test(async (t) => {
|
promise_test(async (t) => {
|
||||||
|
@ -147,12 +146,10 @@ promise_test(async (t) => {
|
||||||
|
|
||||||
document.body.appendChild(iframe);
|
document.body.appendChild(iframe);
|
||||||
|
|
||||||
// Wait 3 seconds for reports to settle.
|
await checkNavigationReportExistence(
|
||||||
await wait(3000);
|
'endpoint', targetUrl, iframe.src, 'enforce');
|
||||||
|
await checkNavigationReportExistence(
|
||||||
checkNavigationReportExistence(reports, targetUrl, iframe.src, 'enforce');
|
'report-only-endpoint', targetUrl, iframe.src, 'reporting');
|
||||||
checkNavigationReportExistence(
|
|
||||||
reportsForReportOnly, targetUrl, iframe.src, 'reporting');
|
|
||||||
}, 'COEP violation on nested frame navigation');
|
}, 'COEP violation on nested frame navigation');
|
||||||
|
|
||||||
</script>$
|
</script>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue