mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
Update web-platform-tests to revision 90aab682c731f768872ca2b37f047752d5da2d8a
This commit is contained in:
parent
701b698999
commit
a71c7758db
139 changed files with 2383 additions and 998 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: TIMEOUT
|
expected: FAIL
|
||||||
|
|
||||||
[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,2 @@
|
||||||
|
[border-image-slice-005.htm]
|
||||||
|
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
||||||
|
[border-image-slice-007.htm]
|
||||||
|
expected: FAIL
|
|
@ -17,6 +17,3 @@
|
||||||
[test the top of layer]
|
[test the top of layer]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[test some point of the element: top left corner]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
[HTMLMediaElement.html]
|
|
||||||
expected: TIMEOUT
|
|
|
@ -312,9 +312,6 @@
|
||||||
[Response: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
[Response: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||||
expected: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: */* text/html]
|
[<iframe>: combined response Content-Type: */* text/html]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
@ -327,12 +324,12 @@
|
||||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html */*]
|
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
[<iframe>: separate response Content-Type: text/plain */*]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -53,9 +53,9 @@
|
||||||
[combined text/javascript ]
|
[combined text/javascript ]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[separate text/javascript;charset=windows-1252 error text/javascript]
|
[separate text/javascript x/x]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[separate text/javascript;charset=windows-1252 text/javascript]
|
[separate text/javascript ]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
[image-loads.html]
|
|
||||||
expected: TIMEOUT
|
|
|
@ -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'NosniFF']
|
[X-Content-Type-Options%3A%20%22nosniFF%22]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[traverse_the_history_1.html]
|
|
||||||
[Multiple history traversals from the same task]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
[traverse_the_history_5.html]
|
[traverse_the_history_2.html]
|
||||||
[Multiple history traversals, last would be aborted]
|
[Multiple history traversals, last would be aborted]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[cross-origin-objects-on-new-window.html]
|
||||||
|
expected: TIMEOUT
|
|
@ -1,15 +1,16 @@
|
||||||
[supported-elements.html]
|
[supported-elements.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[Contenteditable element should support autofocus]
|
[Contenteditable element should support autofocus]
|
||||||
expected: FAIL
|
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: FAIL
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Element with tabindex should support autofocus]
|
[Element with tabindex should support autofocus]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[Area element should support autofocus]
|
[Area element should support autofocus]
|
||||||
expected: FAIL
|
expected: NOTRUN
|
||||||
|
|
||||||
[Host element with delegatesFocus should support autofocus]
|
[Host element with delegatesFocus should support autofocus]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
|
@ -171,3 +171,6 @@
|
||||||
[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_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
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[form-double-submit-2.html]
|
||||||
|
[preventDefault should allow onclick submit() to succeed]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[module-delayed.html]
|
||||||
|
[async document.write in a module]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[module-static-import-delayed.html]
|
|
||||||
[document.write in an imported module]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -86,3 +86,87 @@
|
||||||
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://[1::8\]/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </..//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:///.//> against <file:////>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\localhost//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|?> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\#guppy> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\n/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://\\/localhost//cat> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://1.2.3.4/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\?fox> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <\\/localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://example.net/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\\> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </////mouse> against <file:///elephant>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://spider///> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </c:/foo/bar> against <file://host/path>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|#> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -86,3 +86,87 @@
|
||||||
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://[1::8\]/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </..//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:///.//> against <file:////>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\localhost//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|?> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\#guppy> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\n/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://\\/localhost//cat> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://1.2.3.4/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\?fox> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <\\/localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://example.net/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\\> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </////mouse> against <file:///elephant>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://spider///> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </c:/foo/bar> against <file://host/path>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|#> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -86,3 +86,87 @@
|
||||||
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://[1::8\]/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </..//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:///.//> against <file:////>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\localhost//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|?> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\#guppy> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\n/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://\\/localhost//cat> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://1.2.3.4/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\?fox> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <\\/localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://example.net/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\\> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </////mouse> against <file:///elephant>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://spider///> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </c:/foo/bar> against <file://host/path>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|#> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
[audiocontext-not-fully-active.html]
|
[audiocontext-not-fully-active.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[frame in navigated remote-site frame]
|
[frame in navigated remote-site frame]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
[017.html]
|
||||||
|
expected: TIMEOUT
|
||||||
|
[origin of the script that invoked the method, about:blank]
|
||||||
|
expected: TIMEOUT
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[018.html]
|
|
||||||
expected: TIMEOUT
|
|
||||||
[origin of the script that invoked the method, javascript:]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
|
@ -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: TIMEOUT
|
expected: FAIL
|
||||||
|
|
||||||
[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
|
||||||
|
|
|
@ -22508,20 +22508,6 @@
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
|
||||||
"wheel-basic-manual.html": [
|
|
||||||
"c5a09f6cb4f8919539090187fa8be1a670617b33",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"wheel-scrolling-manual.html": [
|
|
||||||
"cae4cf6523b4a23d125d187215a96ad7918675cc",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -118656,7 +118642,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"background-attachment-353.html": [
|
"background-attachment-353.html": [
|
||||||
"c5ac06c0f57f25a390c29d05622b1fbb09b667eb",
|
"93338c1f8d5c3ec1d745afbb99699e02d3417955",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
|
@ -123334,6 +123320,32 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"border-image-shorthand-002.htm": [
|
||||||
|
"918d7298791effe04f0658f8dab4796abe2c3840",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-backgrounds/reference/border-image-shorthand-002-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"border-image-shorthand-003.htm": [
|
||||||
|
"1762966c2c13de7d3b266776b4b82863e6fc76d9",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-backgrounds/reference/border-image-shorthand-003-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"border-image-slice-001.xht": [
|
"border-image-slice-001.xht": [
|
||||||
"3861dcfad939f09c6247034373e62548204bec8e",
|
"3861dcfad939f09c6247034373e62548204bec8e",
|
||||||
[
|
[
|
||||||
|
@ -123373,6 +123385,32 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"border-image-slice-005.htm": [
|
||||||
|
"1a09732b6dc96ce4c0d5a47b03f7de1fea1c3d45",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-backgrounds/reference/border-image-slice-005-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"border-image-slice-007.htm": [
|
||||||
|
"e852867b10ea39c74f159b272ddad3cabb7f3f7c",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/css-backgrounds/reference/border-image-slice-007-ref.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"border-image-slice-percentage.html": [
|
"border-image-slice-percentage.html": [
|
||||||
"5ef9ff0d1df560a31a87df7438c9e435d6ad65e3",
|
"5ef9ff0d1df560a31a87df7438c9e435d6ad65e3",
|
||||||
[
|
[
|
||||||
|
@ -135395,6 +135433,19 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"flex-aspect-ratio-img-column-016.html": [
|
||||||
|
"473aea9e4b0235c44bbc17d92b76b1749e1c505d",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square-only.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"flex-aspect-ratio-img-row-001.html": [
|
"flex-aspect-ratio-img-row-001.html": [
|
||||||
"14fabf760ca4293abf5af9e618b2e2ed627be2b2",
|
"14fabf760ca4293abf5af9e618b2e2ed627be2b2",
|
||||||
[
|
[
|
||||||
|
@ -135525,6 +135576,19 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"flex-aspect-ratio-img-row-012.html": [
|
||||||
|
"35806891e2b72813a203d8f287716322d91fc28d",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square-only.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"flex-base.html": [
|
"flex-base.html": [
|
||||||
"93401d3fe32716ca14a3f7f3be4f0fa64a7fabf2",
|
"93401d3fe32716ca14a3f7f3be4f0fa64a7fabf2",
|
||||||
[
|
[
|
||||||
|
@ -146297,6 +146361,19 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"grid-img-item-percent-max-height-001.html": [
|
||||||
|
"d0d6d04dc7b882ebe1addaca94a4c38231973803",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square-only.html",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"grid-inline-items-001.html": [
|
"grid-inline-items-001.html": [
|
||||||
"09703be7f875dcccd51c95be104f5c96019d90da",
|
"09703be7f875dcccd51c95be104f5c96019d90da",
|
||||||
[
|
[
|
||||||
|
@ -161474,7 +161551,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"one-custom-property-animation.https.html": [
|
"one-custom-property-animation.https.html": [
|
||||||
"1675bba1696e9ce8d442af5e6e8c25c61c2d07db",
|
"ca746f5999b6f57a43499a91007325fa93524d17",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
|
@ -162423,7 +162500,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"two-custom-property-animation.https.html": [
|
"two-custom-property-animation.https.html": [
|
||||||
"392b5291f92e4c1330b5843beb40b92f25abc45e",
|
"9cd20272a35ca713e7916c2d6c15ae2a1aa7e912",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
|
@ -165444,7 +165521,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"selection-contenteditable-011.html": [
|
"selection-contenteditable-011.html": [
|
||||||
"bc01d103ea9bfd41ab40f3ad6a429266cd29bef8",
|
"4f5670111b49594ae639c4706e4ebfb7864d17ee",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
|
@ -170949,7 +171026,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"flex-aspect-ratio-013.tentative.html": [
|
"flex-aspect-ratio-013.tentative.html": [
|
||||||
"04933e9b10155ae022aedc2e92b038dd97f23819",
|
"6c467e20e6fe0b7bfcac2cf2a15670016df88fee",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
|
@ -170962,7 +171039,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"flex-aspect-ratio-014.tentative.html": [
|
"flex-aspect-ratio-014.tentative.html": [
|
||||||
"13d1719bf2e732b979725dcf6c31fcef91b75b2d",
|
"532776cfa3df57df6820437339f5c57bc62465e8",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
[
|
[
|
||||||
|
@ -171532,6 +171609,84 @@
|
||||||
],
|
],
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
|
],
|
||||||
|
"replaced-element-022.tentative.html": [
|
||||||
|
"ea00810fb99eb7322680abeb90d022bf35274347",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"replaced-element-023.tentative.html": [
|
||||||
|
"72b563a7a6b30f70ed4a5e07b2ec4f82a10d3695",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"replaced-element-024.tentative.html": [
|
||||||
|
"168be8769b45bc71e8012305cd338dafdb9edff0",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"replaced-element-025.tentative.html": [
|
||||||
|
"733ca2f796785dfdd2dd09d5f83bb62b63650e42",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"replaced-element-026.tentative.html": [
|
||||||
|
"5a20c67290e82afb998eac8cc5f9afa933f86978",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"replaced-element-027.tentative.html": [
|
||||||
|
"42d8fe0be978dca021749c8d220b0083982232b2",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"auto-scrollbar-inside-stf-abspos.html": [
|
"auto-scrollbar-inside-stf-abspos.html": [
|
||||||
|
@ -172840,6 +172995,45 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"absolute-tables-013.html": [
|
||||||
|
"2eff1c976f7456e73b77d2742d06689fd00c5868",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"absolute-tables-014.html": [
|
||||||
|
"60dfc1f59daa80a0140a44141e6732489fdd721b",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"absolute-tables-015.html": [
|
||||||
|
"f0f19e2d66dea93c3cd56ea3bfba83a035903f3f",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
"/css/reference/ref-filled-green-100px-square.xht",
|
||||||
|
"=="
|
||||||
|
]
|
||||||
|
],
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"anonymous-table-cell-margin-collapsing.html": [
|
"anonymous-table-cell-margin-collapsing.html": [
|
||||||
"23b467ebacc983122a632f4d5971c8daca569420",
|
"23b467ebacc983122a632f4d5971c8daca569420",
|
||||||
[
|
[
|
||||||
|
@ -251199,7 +251393,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
".taskcluster.yml": [
|
".taskcluster.yml": [
|
||||||
"b1a8162db4b21c594b3060ce6109d98bf6f98d31",
|
"c5e3a68087123737fc8ab2ba930ee8d4d7587d0e",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
".well-known": {
|
".well-known": {
|
||||||
|
@ -295125,6 +295319,22 @@
|
||||||
"fe9bf3b86abd756387dadd8e5c9c30e8915371dc",
|
"fe9bf3b86abd756387dadd8e5c9c30e8915371dc",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"border-image-shorthand-002-ref.html": [
|
||||||
|
"b21217c91e311065d41c6b893baaf36a86315f44",
|
||||||
|
[]
|
||||||
|
],
|
||||||
|
"border-image-shorthand-003-ref.html": [
|
||||||
|
"3ff7980de6c04776bba4ded110e14229d92e5c06",
|
||||||
|
[]
|
||||||
|
],
|
||||||
|
"border-image-slice-005-ref.html": [
|
||||||
|
"d4a4040a7854d7578e94b372650318792925f662",
|
||||||
|
[]
|
||||||
|
],
|
||||||
|
"border-image-slice-007-ref.html": [
|
||||||
|
"2581d8dabfc7927c6ce8c1a5bedd9ccb2af82e52",
|
||||||
|
[]
|
||||||
|
],
|
||||||
"border-image-slice-percentage-ref.html": [
|
"border-image-slice-percentage-ref.html": [
|
||||||
"bfc2efbfa0bf419c13530e6c7d2ffcb324b05e35",
|
"bfc2efbfa0bf419c13530e6c7d2ffcb324b05e35",
|
||||||
[]
|
[]
|
||||||
|
@ -295365,6 +295575,18 @@
|
||||||
"b3c8cf3eb4c89bd8f2d1ffde051856f375e3a3de",
|
"b3c8cf3eb4c89bd8f2d1ffde051856f375e3a3de",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
|
"9grid40-30-20-10-green.png": [
|
||||||
|
"329699bf9d1cb665ba9be62bcb76da8ffd137f34",
|
||||||
|
[]
|
||||||
|
],
|
||||||
|
"9grid40-30-20-10-red-old.png": [
|
||||||
|
"975b8095f00affe1a705f30ed77228ed296f97ed",
|
||||||
|
[]
|
||||||
|
],
|
||||||
|
"9grid40-30-20-10-red.png": [
|
||||||
|
"356bf82e4a376477d582edae8a2a22209b6398fc",
|
||||||
|
[]
|
||||||
|
],
|
||||||
"a-green.css": [
|
"a-green.css": [
|
||||||
"b0dbb071d5b05d1c574cd5c9a660f1e3d62c573b",
|
"b0dbb071d5b05d1c574cd5c9a660f1e3d62c573b",
|
||||||
[]
|
[]
|
||||||
|
@ -309914,7 +310136,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"active-selection-031-ref.html": [
|
"active-selection-031-ref.html": [
|
||||||
"7e354e5bc68ca82e1014de470ff56eab989652e9",
|
"4a65dfdd160a488a38e8ac6a5c5d58fae279a63b",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"active-selection-041-notref.html": [
|
"active-selection-041-notref.html": [
|
||||||
|
@ -330001,7 +330223,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"window-tests-enumeration.js": [
|
"window-tests-enumeration.js": [
|
||||||
"441199c8ecfb0d5fb69479bbb04e2eb15d238a49",
|
"24c8e0f94664a055318feaa3bf58a5bb1a840256",
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -333596,7 +333818,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"text-styles.yaml": [
|
"text-styles.yaml": [
|
||||||
"e3fcbe7ae2ad6364a8e515a8896b2b5e86f33130",
|
"fa613c3ea4facaa95abeef2bf5916d091e4ce166",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"the-canvas-element.yaml": [
|
"the-canvas-element.yaml": [
|
||||||
|
@ -346965,7 +347187,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"frame.html": [
|
"frame.html": [
|
||||||
"8f35d2703e72eb316b1e46f602ae6fc1d5894285",
|
"537de07b140d79367161c5be16918b79e8d40048",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"frame.html.headers": [
|
"frame.html.headers": [
|
||||||
|
@ -349895,7 +350117,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"webxr-test.js": [
|
"webxr-test.js": [
|
||||||
"800c0a4a9782d254f6f7b8473853354bdd31d058",
|
"084d692ee0a7f705e9647c7b13038c85127cb9af",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"webxr-test.js.headers": [
|
"webxr-test.js.headers": [
|
||||||
|
@ -354755,11 +354977,11 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"run_tc.py": [
|
"run_tc.py": [
|
||||||
"3a3b0d8090baf7ab60f364dfd6908b6be7011f8e",
|
"69bf72fb745b039cebb49cccf4f9d40288ec7aa2",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"taskcluster-run.py": [
|
"taskcluster-run.py": [
|
||||||
"245ee7fa5925e20df7eead0c86993494475a55e4",
|
"a4bd72a8c21d4e84b4ebd44fcff3680fd1291017",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"tc": {
|
"tc": {
|
||||||
|
@ -354793,7 +355015,7 @@
|
||||||
],
|
],
|
||||||
"tasks": {
|
"tasks": {
|
||||||
"test.yml": [
|
"test.yml": [
|
||||||
"1b5c7acfd743dd613fb667acb19d594b0edccce4",
|
"78891bf302373168f7dd806fc332a3886538802d",
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -361166,7 +361388,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"transport.py": [
|
"transport.py": [
|
||||||
"f817ec81a96fb93cc5c60154f057d72e98375694",
|
"e836b19a158d5d99d3f87d314ec95ba77df130ad",
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -361181,7 +361403,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"browser.py": [
|
"browser.py": [
|
||||||
"35f60d1620beab37f93a43da72a927d3ea8ea1eb",
|
"13ffa3f08b34d981ac574c76bfa6e17b972ee1fc",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"commands.json": [
|
"commands.json": [
|
||||||
|
@ -361193,7 +361415,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"install.py": [
|
"install.py": [
|
||||||
"81770225428d4605b142e18914ce142f7724b1cd",
|
"638065a53014f3d463269793aa08f3acf30654ea",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"mach-emulator.manifest": [
|
"mach-emulator.manifest": [
|
||||||
|
@ -361217,7 +361439,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"run.py": [
|
"run.py": [
|
||||||
"f289e097753f40767c8d3c28848e6ac8a428f2c5",
|
"dc130a16d117085c72e047edbfa49be506987e24",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"testfiles.py": [
|
"testfiles.py": [
|
||||||
|
@ -361267,7 +361489,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"utils.py": [
|
"utils.py": [
|
||||||
"6556ff48b36f2cb38e5b8a3961099bad9a1b56f5",
|
"61dcda5470cb89037ee44d73c3b8051712745364",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"virtualenv.py": [
|
"virtualenv.py": [
|
||||||
|
@ -361626,7 +361848,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"environment.py": [
|
"environment.py": [
|
||||||
"e1812b8740a8c077db1101aedf292ba6ec3c488d",
|
"2527d26d391d99683779392c035ceffa30fe5bc2",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"executors": {
|
"executors": {
|
||||||
|
@ -361936,7 +362158,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"wptcommandline.py": [
|
"wptcommandline.py": [
|
||||||
"532c795cd3c5f5bc1e2f8b43bfca38152b79d4ab",
|
"9d1d4048095435de35f00d65e6d4d7de3f427e95",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"wptlogging.py": [
|
"wptlogging.py": [
|
||||||
|
@ -362006,7 +362228,7 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"wptrunner.py": [
|
"wptrunner.py": [
|
||||||
"897b4a9f815486d9e651de9ddd3cfae7d7872949",
|
"e1d9ef8b1a91dd2d44458c8c9d027537991f4cc9",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"wpttest.py": [
|
"wpttest.py": [
|
||||||
|
@ -362903,7 +363125,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"setters_tests.json": [
|
"setters_tests.json": [
|
||||||
"d06fb2cfe629b80456502c7d3911b5debd71929e",
|
"8aa74d6b8a28d9021050f4e52e7ee7f8f411912f",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"toascii.json": [
|
"toascii.json": [
|
||||||
|
@ -362911,7 +363133,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"urltestdata.json": [
|
"urltestdata.json": [
|
||||||
"76a8b3a015dcbc7a27ea22ba92a0214afce051e1",
|
"dba7237d88a682e7ce2920cccd412f3f7fe7c83c",
|
||||||
[]
|
[]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
@ -364336,7 +364558,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"asserts.py": [
|
"asserts.py": [
|
||||||
"5bd7f5b38e7a344fb2a1f7c40090fb5edd28c4d4",
|
"3c3d677c90ecfc90f864042ef0628fb99a57131c",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"authentication.py": [
|
"authentication.py": [
|
||||||
|
@ -364574,7 +364796,7 @@
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"RTCRtpParameters-helper.js": [
|
"RTCRtpParameters-helper.js": [
|
||||||
"17ecfbaf99e8ff133373f1487a282dbaab7562f6",
|
"d7653c3a8afbfe60c7eeb64fe50ba250c271ce48",
|
||||||
[]
|
[]
|
||||||
],
|
],
|
||||||
"RTCStats-helper.js": [
|
"RTCStats-helper.js": [
|
||||||
|
@ -396085,7 +396307,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"display-math-on-non-mathml-elements.html": [
|
"display-math-on-non-mathml-elements.html": [
|
||||||
"b622acdccd1ee33e75fc6fbffb052e8bff31c801",
|
"c2f0f5f9c9e2719440752ec37e67fb5693fb3c92",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -397738,6 +397960,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"scrollbars-auto-min-content-sizing.html": [
|
||||||
|
"45a1296240411fc369f5e399f6b28af31d72a14a",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"shrinking-column-flexbox.html": [
|
"shrinking-column-flexbox.html": [
|
||||||
"680dc7eb7f36e508437fab444660d58d03f00bfe",
|
"680dc7eb7f36e508437fab444660d58d03f00bfe",
|
||||||
[
|
[
|
||||||
|
@ -397796,8 +398025,8 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"fontface-override-descriptor-getter-setter.html": [
|
"fontface-override-descriptor-getter-setter.sub.html": [
|
||||||
"a674c22285af20e24a26cfcd3fb590d9663b8c25",
|
"a3d8ccec3681d9124458106da9ff85be03fccdb0",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -397810,6 +398039,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"fontfaceset-load-var.html": [
|
||||||
|
"1d74f8ed2a91e38cb5900be98e6455671be8b333",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"fontfacesetloadevent-constructor.html": [
|
"fontfacesetloadevent-constructor.html": [
|
||||||
"d5038ce690c6df5f8eb6f2d0266df052f7200fc5",
|
"d5038ce690c6df5f8eb6f2d0266df052f7200fc5",
|
||||||
[
|
[
|
||||||
|
@ -412569,7 +412805,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"display.html": [
|
"display.html": [
|
||||||
"51f35323103bfdde55e4482b2eb5b0ccd337dc01",
|
"7a90b1c07cd45638c6e521fe901e512a31a6ded0",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -420800,6 +421036,13 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
"DOMImplementation-createHTMLDocument-with-saved-implementation.html": [
|
||||||
|
"bae22660bfb5def09a11ad9c8b9d95d8d68fe9cd",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{}
|
||||||
|
]
|
||||||
|
],
|
||||||
"DOMImplementation-createHTMLDocument.html": [
|
"DOMImplementation-createHTMLDocument.html": [
|
||||||
"c6e0beaf75f4ee427aeaabbb4cfda98e174010e0",
|
"c6e0beaf75f4ee427aeaabbb4cfda98e174010e0",
|
||||||
[
|
[
|
||||||
|
@ -450324,7 +450567,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"2d.text.font.parse.invalid.html": [
|
"2d.text.font.parse.invalid.html": [
|
||||||
"93dee2277b1e09101b3c931ca34dd4f8c2962630",
|
"e2735440eddb71215845857ae7811c0bf74ccdd9",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -462483,7 +462726,7 @@
|
||||||
"reporting": {
|
"reporting": {
|
||||||
"access-reporting": {
|
"access-reporting": {
|
||||||
"access-from-coop-page-to-openee_coop-ro.https.html": [
|
"access-from-coop-page-to-openee_coop-ro.https.html": [
|
||||||
"8d65a902a2de725df9410bf5a7ef13e11594b0bf",
|
"53746410c3194baba37cc7065318b9c4027f8dad",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462492,7 +462735,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-from-coop-page-to-openee_coop-ro_cross-origin.https.html": [
|
"access-from-coop-page-to-openee_coop-ro_cross-origin.https.html": [
|
||||||
"d7d074e5c562f96a6b4349fd0497fd55751e171b",
|
"66f13b6390ec95020783cabad331670cf024bd34",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462501,7 +462744,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-from-coop-page-to-opener_coop-ro.https.html": [
|
"access-from-coop-page-to-opener_coop-ro.https.html": [
|
||||||
"3cdd592b626cd843dbff99701ef04818eca1b218",
|
"2f8ce00b80c1a17589f5b5d5a64aa4cceb6ae59e",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462510,7 +462753,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-from-coop-page-to-opener_coop-ro_cross-origin.https.html": [
|
"access-from-coop-page-to-opener_coop-ro_cross-origin.https.html": [
|
||||||
"3319069dde178335bca1e03ca5dbf37afc191987",
|
"17e0ebd96e63d816947733b1975b2eb9b3ec7349",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462519,7 +462762,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-from-coop-page-to-other_coop-ro.https.html": [
|
"access-from-coop-page-to-other_coop-ro.https.html": [
|
||||||
"42a4f926de336932faa715bd20e211b77407ce77",
|
"67be395711d251f2d643737a0242cf9cbe524e71",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462528,7 +462771,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-from-coop-page-to-other_coop-ro_cross-origin.https.html": [
|
"access-from-coop-page-to-other_coop-ro_cross-origin.https.html": [
|
||||||
"93e9247251cae192794798443a6a859ca52be3f2",
|
"01e082d9ba0b00fc1827b7b09d085d76596eaf40",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462537,7 +462780,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-to-coop-page-from-openee_coop-ro.https.html": [
|
"access-to-coop-page-from-openee_coop-ro.https.html": [
|
||||||
"0016534f76cb73d287780a23f65989e924f2e5ff",
|
"4a5be8b12ac1bcb3081473fa9a37c3de423a4c4b",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462546,7 +462789,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-to-coop-page-from-openee_coop-ro_cross-origin.https.html": [
|
"access-to-coop-page-from-openee_coop-ro_cross-origin.https.html": [
|
||||||
"29712ab9f2c1fda1f76279849e28e65c3f89ae99",
|
"e48f5f7efdd96526f4291dc9ec3199330c062b01",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462555,7 +462798,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-to-coop-page-from-opener_coop-ro.https.html": [
|
"access-to-coop-page-from-opener_coop-ro.https.html": [
|
||||||
"f296155ebc3b90c9d582f2ea5e171db1eceba554",
|
"10bdf896addd32d1b1dbedce95520f7820780b3c",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462564,7 +462807,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-to-coop-page-from-opener_coop-ro_cross-origin.https.html": [
|
"access-to-coop-page-from-opener_coop-ro_cross-origin.https.html": [
|
||||||
"885f0ccabf61cec20b71952af49f6c71348d4d06",
|
"da87746346e5f7f0e7ab1a5f3f27957cc6202574",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462573,7 +462816,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-to-coop-page-from-other_coop-ro.https.html": [
|
"access-to-coop-page-from-other_coop-ro.https.html": [
|
||||||
"47bc9cd6063b8b320df8d7224aa93326ba79a0be",
|
"4ed609a9c879f87dc87792de701d12e0b481ca96",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -462582,7 +462825,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"access-to-coop-page-from-other_coop-ro_cross-origin.https.html": [
|
"access-to-coop-page-from-other_coop-ro_cross-origin.https.html": [
|
||||||
"4d419f0bee56685bba0e0741fc68bac05288b1ab",
|
"1e7cf0a1b440a882fba656bf30acce1e1c8a87c7",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -481716,7 +481959,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"intersection-ratio-ib-split.html": [
|
"intersection-ratio-ib-split.html": [
|
||||||
"905ea436fd6a85fff228f5676742b89ab001a3b7",
|
"1cba6daf6e8eb9cb5f0cbbacafd0c6e91b1de2cf",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -483582,7 +483825,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"embellished-operator-003.html": [
|
"embellished-operator-003.html": [
|
||||||
"77e3b887112705171af0261bbbc68e8b8449e754",
|
"268d6da006621d6f7c3107e7ea269bfb2cfc5457",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -483926,21 +484169,21 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"subsup-1.html": [
|
"subsup-1.html": [
|
||||||
"e5321d6c4a3c3dafca68caacdb651fed5c778c9b",
|
"1c3b04dd4169de3c7a01d8e107bc6cea767b36f0",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"subsup-2.html": [
|
"subsup-2.html": [
|
||||||
"1a5b80d34397962c2e7d3400c782bed8cd6f149b",
|
"d6a48b94f128be2869adb1dfadd24942662d6f71",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"subsup-3.html": [
|
"subsup-3.html": [
|
||||||
"5494bb0c919cba3c02320d4f59481dc4eebed74f",
|
"37815cba78ccd589f222a4300844ac9b2822e05d",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -491183,7 +491426,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"document-domain.sub.https.html": [
|
"document-domain.sub.https.html": [
|
||||||
"6910b022052b403f6c9f15d6dc12e797065e16ce",
|
"48f9a99b5f7dbe10b7dac7f12764029657d4ff0d",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -520707,6 +520950,24 @@
|
||||||
"testdriver": true
|
"testdriver": true
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
],
|
||||||
|
"wheel-basic.html": [
|
||||||
|
"1a43022d2928bd704b25a7b48443264268d7088c",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{
|
||||||
|
"testdriver": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
],
|
||||||
|
"wheel-scrolling.html": [
|
||||||
|
"44e76bff6cb2a779b69c3677e738d947351e06a7",
|
||||||
|
[
|
||||||
|
null,
|
||||||
|
{
|
||||||
|
"testdriver": true
|
||||||
|
}
|
||||||
|
]
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -531458,7 +531719,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCConfiguration-iceServers.html": [
|
"RTCConfiguration-iceServers.html": [
|
||||||
"2ef99bf59c8cc11273e99388b1444bf25067cb22",
|
"1cbf1d6c1da47b80d9b3d7173f78062f2e49bf10",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -531725,15 +531986,8 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCPeerConnection-getDefaultIceServers.html": [
|
|
||||||
"4fdbdb8dec46de549c077949ed946a7a310e9b74",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"RTCPeerConnection-getStats.https.html": [
|
"RTCPeerConnection-getStats.https.html": [
|
||||||
"f39fd2c3137c35006a7ba13ef77e062e46ee86d5",
|
"ede0ab1efc10799d12473437e53f2ec555aa625f",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -531779,7 +532033,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCPeerConnection-mandatory-getStats.https.html": [
|
"RTCPeerConnection-mandatory-getStats.https.html": [
|
||||||
"50158d4cea0cde3ae5f583140859de6da79ba0bd",
|
"7da14cd5e0f3f5c7e807b61cb0e7ecc7216ff007",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -531788,7 +532042,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCPeerConnection-ondatachannel.html": [
|
"RTCPeerConnection-ondatachannel.html": [
|
||||||
"46fe8e0f51b1b1a855f06d54c819784d6f542508",
|
"034365508b6bca14698537819d86c53fc1226d5e",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -532001,7 +532255,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCPeerConnection-track-stats.https.html": [
|
"RTCPeerConnection-track-stats.https.html": [
|
||||||
"42054ad9e66615543cd3bf02544f876dabd2a3a0",
|
"7c344223029978f2b0de10ce6d8edfaf48909029",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -532042,7 +532296,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCRtpParameters-encodings.html": [
|
"RTCRtpParameters-encodings.html": [
|
||||||
"539b2692806934254c4ec4b8d8bb14ef1296207d",
|
"e1a6e625379ef1f6a87558a744fc1364c8896481",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -532084,7 +532338,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCRtpReceiver-getParameters.html": [
|
"RTCRtpReceiver-getParameters.html": [
|
||||||
"4be0e3b95ec45bd9693a4da38b146c58b37810f8",
|
"7047ce7d1f363b7d2e06ebbebea11736abcccf3e",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -532183,14 +532437,14 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCRtpTransceiver-stop.html": [
|
"RTCRtpTransceiver-stop.html": [
|
||||||
"30cb6130d4f81d383f4ecaf5ed64126946cb816a",
|
"4f3a9ce85fa244bc673447fa389f44bdc381b230",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"RTCRtpTransceiver.https.html": [
|
"RTCRtpTransceiver.https.html": [
|
||||||
"2e1dcbb0d9573a4a027b84113af8a6444ad9b1e2",
|
"c9dce45d73884bce74f164ba306ce67bcc739205",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
|
@ -539110,7 +539364,7 @@
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"xrWebGLLayer_framebuffer_scale.https.html": [
|
"xrWebGLLayer_framebuffer_scale.https.html": [
|
||||||
"7b5cedb1c83987daf435f662e5687cf6e1bb0559",
|
"3faab3bf6bc849330afa331dd8789dac39c07eec",
|
||||||
[
|
[
|
||||||
null,
|
null,
|
||||||
{}
|
{}
|
||||||
|
@ -564567,20 +564821,6 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"border-image-shorthand-002.htm": [
|
|
||||||
"92b7f92f4370a9991514f9641bc454908a6abb71",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"border-image-shorthand-003.htm": [
|
|
||||||
"b65430cfc1ac85b7644220c08124118f83b98f57",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"border-image-slice-004.htm": [
|
"border-image-slice-004.htm": [
|
||||||
"86b3c1e6b1dd80770c3867b058e9a8920786db06",
|
"86b3c1e6b1dd80770c3867b058e9a8920786db06",
|
||||||
[
|
[
|
||||||
|
@ -564588,13 +564828,6 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"border-image-slice-005.htm": [
|
|
||||||
"e76125d7331586407d9795d9789ac0b861ac2028",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"border-image-slice-006.htm": [
|
"border-image-slice-006.htm": [
|
||||||
"d6484b06db30b052f584c60f0dd3dbb20a61ae41",
|
"d6484b06db30b052f584c60f0dd3dbb20a61ae41",
|
||||||
[
|
[
|
||||||
|
@ -564602,13 +564835,6 @@
|
||||||
{}
|
{}
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
"border-image-slice-007.htm": [
|
|
||||||
"c354666871989906a77a806400fe4fe966e53eee",
|
|
||||||
[
|
|
||||||
null,
|
|
||||||
{}
|
|
||||||
]
|
|
||||||
],
|
|
||||||
"border-image-width-001.htm": [
|
"border-image-width-001.htm": [
|
||||||
"a07426a6282f446d1c7bb31a93b098bd2c102470",
|
"a07426a6282f446d1c7bb31a93b098bd2c102470",
|
||||||
[
|
[
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[border-image-slice-005.htm]
|
||||||
|
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
||||||
|
[border-image-slice-007.htm]
|
||||||
|
expected: FAIL
|
|
@ -21,6 +21,3 @@
|
||||||
[test the top of layer]
|
[test the top of layer]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[test some point of the element: top left corner]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
[HTMLMediaElement.html]
|
|
||||||
expected: TIMEOUT
|
|
|
@ -312,9 +312,6 @@
|
||||||
[fetch(): separate response Content-Type: text/plain ]
|
[fetch(): separate response Content-Type: text/plain ]
|
||||||
expected: NOTRUN
|
expected: NOTRUN
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: */* text/html]
|
[<iframe>: combined response Content-Type: */* text/html]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
@ -327,12 +324,12 @@
|
||||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html */*]
|
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
[<iframe>: separate response Content-Type: text/plain */*]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -53,9 +53,9 @@
|
||||||
[combined text/javascript ]
|
[combined text/javascript ]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[separate text/javascript;charset=windows-1252 error text/javascript]
|
[separate text/javascript x/x]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
[separate text/javascript;charset=windows-1252 text/javascript]
|
[separate text/javascript ]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,2 +0,0 @@
|
||||||
[image-loads.html]
|
|
||||||
expected: TIMEOUT
|
|
|
@ -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'NosniFF']
|
[X-Content-Type-Options%3A%20%22nosniFF%22]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[traverse_the_history_1.html]
|
|
||||||
[Multiple history traversals from the same task]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
[traverse_the_history_5.html]
|
[traverse_the_history_2.html]
|
||||||
[Multiple history traversals, last would be aborted]
|
[Multiple history traversals, last would be aborted]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
[cross-origin-objects-on-new-window.html]
|
||||||
|
expected: TIMEOUT
|
|
@ -1,4 +1,5 @@
|
||||||
[supported-elements.html]
|
[supported-elements.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[Contenteditable element should support autofocus]
|
[Contenteditable element should support autofocus]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
@ -6,10 +7,10 @@
|
||||||
expected: FAIL
|
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: FAIL
|
expected: TIMEOUT
|
||||||
|
|
||||||
[Area element should support autofocus]
|
[Area element should support autofocus]
|
||||||
expected: FAIL
|
expected: NOTRUN
|
||||||
|
|
||||||
[Host element with delegatesFocus should support autofocus]
|
[Host element with delegatesFocus should support autofocus]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
|
@ -172,3 +172,6 @@
|
||||||
[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,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
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[form-double-submit-2.html]
|
||||||
|
[preventDefault should allow onclick submit() to succeed]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -0,0 +1,4 @@
|
||||||
|
[module-delayed.html]
|
||||||
|
[async document.write in a module]
|
||||||
|
expected: FAIL
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
[module-static-import-delayed.html]
|
|
||||||
[document.write in an imported module]
|
|
||||||
expected: FAIL
|
|
||||||
|
|
|
@ -96,3 +96,87 @@
|
||||||
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://[1::8\]/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </..//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:///.//> against <file:////>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\localhost//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|?> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\#guppy> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\n/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://\\/localhost//cat> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://1.2.3.4/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\?fox> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <\\/localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://example.net/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\\> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </////mouse> against <file:///elephant>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://spider///> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </c:/foo/bar> against <file://host/path>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|#> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -96,3 +96,87 @@
|
||||||
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://[1::8\]/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </..//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:///.//> against <file:////>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\localhost//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|?> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\#guppy> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\n/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://\\/localhost//cat> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://1.2.3.4/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\?fox> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <\\/localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://example.net/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\\> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </////mouse> against <file:///elephant>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://spider///> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </c:/foo/bar> against <file://host/path>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|#> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -87,3 +87,87 @@
|
||||||
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
[Parsing: <non-spec:/a/..//> against <about:blank>]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://[1::8\]/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </..//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:///.//> against <file:////>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\localhost//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|?> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\#guppy> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\n/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://\\/localhost//cat> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://1.2.3.4/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\\\\\?fox> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <\\/localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://example.net/C:/> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <////one/two> against <file:///>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|\\> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </////mouse> against <file:///elephant>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:////foo> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://spider///> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file:\\\\//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <//localhost//pig> against <file://lion/>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: </c:/foo/bar> against <file://host/path>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|/> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <file://localhost//a//../..//> against <about:blank>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
[Parsing: <C|#> against <file://host/dir/file>]
|
||||||
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
[audiocontext-not-fully-active.html]
|
[audiocontext-not-fully-active.html]
|
||||||
|
expected: TIMEOUT
|
||||||
[frame in navigated remote-site frame]
|
[frame in navigated remote-site frame]
|
||||||
expected: FAIL
|
expected: FAIL
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
[017.html]
|
||||||
|
expected: TIMEOUT
|
||||||
|
[origin of the script that invoked the method, about:blank]
|
||||||
|
expected: TIMEOUT
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[018.html]
|
|
||||||
expected: TIMEOUT
|
|
||||||
[origin of the script that invoked the method, javascript:]
|
|
||||||
expected: TIMEOUT
|
|
||||||
|
|
|
@ -7,7 +7,7 @@ tasks:
|
||||||
run_task:
|
run_task:
|
||||||
$if: 'tasks_for == "github-push"'
|
$if: 'tasks_for == "github-push"'
|
||||||
then:
|
then:
|
||||||
$if: 'event.ref in ["refs/heads/master", "refs/heads/epochs/daily", "refs/heads/epochs/weekly", "refs/heads/triggers/chrome_stable", "refs/heads/triggers/chrome_beta", "refs/heads/triggers/chrome_dev", "refs/heads/triggers/chrome_nightly", "refs/heads/triggers/firefox_stable", "refs/heads/triggers/firefox_beta", "refs/heads/triggers/firefox_nightly", "refs/heads/triggers/webkitgtk_minibrowser_stable", "refs/heads/triggers/webkitgtk_minibrowser_nightly", "refs/heads/triggers/servo_nightly"]'
|
$if: 'event.ref in ["refs/heads/master", "refs/heads/epochs/daily", "refs/heads/epochs/weekly", "refs/heads/triggers/chrome_stable", "refs/heads/triggers/chrome_beta", "refs/heads/triggers/chrome_dev", "refs/heads/triggers/chrome_nightly", "refs/heads/triggers/firefox_stable", "refs/heads/triggers/firefox_beta", "refs/heads/triggers/firefox_nightly", "refs/heads/triggers/webkitgtk_minibrowser_stable", "refs/heads/triggers/webkitgtk_minibrowser_beta", "refs/heads/triggers/webkitgtk_minibrowser_nightly", "refs/heads/triggers/servo_nightly"]'
|
||||||
then: true
|
then: true
|
||||||
else: false
|
else: false
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -108,21 +108,21 @@
|
||||||
(0px, 0px) (100px, 0px)
|
(0px, 0px) (100px, 0px)
|
||||||
+.......................+
|
+.......................+
|
||||||
| |
|
| |
|
||||||
| transparent area |
|
| green area |
|
||||||
| | overflowed
|
| | overflowed
|
||||||
| | area
|
| | area
|
||||||
| transparent area | |
|
| green area | |
|
||||||
| | V
|
| | V
|
||||||
| +...........| ...........+
|
| +...........| ...........+
|
||||||
| | +........+| |
|
| | +........+| |
|
||||||
| transpa- | | green || red |
|
| green | | green || red |
|
||||||
| rent | | area || area |
|
| area | | area || area |
|
||||||
| area | | || |
|
| | | || |
|
||||||
| | +........+| |
|
| | +........+| |
|
||||||
+.......................+ |
|
+.......................+ |
|
||||||
| |
|
| |
|
||||||
| red area | <-- overflowed
|
| red area | <== overflowed
|
||||||
| | <-- area
|
| | <== area
|
||||||
| red area |
|
| red area |
|
||||||
| |
|
| |
|
||||||
| |
|
| |
|
||||||
|
|
|
@ -1,35 +1,51 @@
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
<!DOCTYPE html>
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
<meta charset="UTF-8">
|
||||||
<title>CSS Test: Omitted values for 'border-image-outset' property in the 'border-image' shorthand</title>
|
|
||||||
<link rel="author" title="Microsoft" href="http://www.microsoft.com/" />
|
<title>CSS Background and Borders Test: Omitted values for 'border-image-outset' property in the 'border-image' shorthand</title>
|
||||||
<link rel="help" href="http://www.w3.org/TR/css3-background/#the-border-image-shorthand" />
|
<link rel="author" title="Microsoft" href="http://www.microsoft.com/">
|
||||||
<meta name="flags" content="image" />
|
<!--
|
||||||
<meta name="assert" content="This test checks that the omitted 'border-image-outset' value in the shorthand property is set to the initial value." />
|
Test rehabilitated by Gérard Talbot
|
||||||
<style type="text/css">
|
2020-05-27 and 2020-06-25 and 2020-09-25
|
||||||
|
-->
|
||||||
|
<link rel="help" href="https://www.w3.org/TR/css-backgrounds-3/#the-border-image">
|
||||||
|
<link rel="match" href="reference/border-image-shorthand-002-ref.html">
|
||||||
|
<meta name="flags" content="">
|
||||||
|
<meta name="assert" content="This test checks that the omitted 'border-image-outset' value in the shorthand property is set to the initial value.">
|
||||||
|
<style>
|
||||||
|
div
|
||||||
|
{
|
||||||
|
border-color: red;
|
||||||
|
border-style: double;
|
||||||
|
border-width: 20px;
|
||||||
|
height: 100px;
|
||||||
|
margin: 50px;
|
||||||
|
width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
#test
|
#test
|
||||||
{
|
{
|
||||||
border: 20px double red;
|
/* We first set border-image-outset to an entirely arbitrary value */
|
||||||
border-image: url("../support/9grid40-30-20-10-lime.png") 40% 15% 20% 5% / 1 stretch;
|
border-image-outset: 2;
|
||||||
height: 100px;
|
/*
|
||||||
margin: 50px;
|
and then we check with a shorthand value (which is deliberately
|
||||||
width: 100px;
|
omitting the border-image-outset sub-property) if the border-image-outset
|
||||||
|
sub-property gets reset to its initial default value
|
||||||
|
(which is 0 and not 2)
|
||||||
|
*/
|
||||||
|
border-image: url("support/9grid40-30-20-10-red-old.png") 40% 15% 20% 5% / 1 stretch;
|
||||||
}
|
}
|
||||||
|
|
||||||
#reference
|
#reference
|
||||||
{
|
{
|
||||||
border: 20px double red;
|
border-image-outset: 0 0 0 0;
|
||||||
border-image-repeat: stretch;
|
border-image-repeat: stretch;
|
||||||
border-image-slice: 40% 15% 20% 5%;
|
border-image-slice: 40% 15% 20% 5%;
|
||||||
border-image-source: url("../support/9grid40-30-20-10-lime.png");
|
border-image-source: url("support/9grid40-30-20-10-red-old.png");
|
||||||
height: 100px;
|
border-image-width: 1;
|
||||||
margin: 50px;
|
|
||||||
width: 100px;
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
|
||||||
<body>
|
<p>Test passes if there are 2 identical green squares and <strong>no red</strong>.
|
||||||
<p>Test passes if there are two identical images visible on the page.</p>
|
|
||||||
<div id="test"></div>
|
<div id="test"></div>
|
||||||
<div id="reference"></div>
|
<div id="reference"></div>
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,37 +1,51 @@
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
<!DOCTYPE html>
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
<meta charset="UTF-8">
|
||||||
<title>CSS Test: Omitted values for 'border-image-width' properties in 'border-image' shorthand</title>
|
|
||||||
<link rel="author" title="Microsoft" href="http://www.microsoft.com/" />
|
<title>CSS Background and Borders Test: Omitted values for 'border-image-width' properties in 'border-image' shorthand</title>
|
||||||
<link rel="help" href="http://www.w3.org/TR/css3-background/#the-border-image-shorthand" />
|
<link rel="author" title="Microsoft" href="http://www.microsoft.com/">
|
||||||
<meta name="flags" content="image" />
|
<!--
|
||||||
<meta name="assert" content="This test checks that the omitted 'border-image-width' value in shorthand property is set to the initial value." />
|
Test rehabilitated by Gérard Talbot
|
||||||
<style type="text/css">
|
2020-05-27 and 2020-06-25 and 2020-09-25
|
||||||
#test
|
-->
|
||||||
|
<link rel="help" href="https://www.w3.org/TR/css-backgrounds-3/#the-border-image">
|
||||||
|
<link rel="match" href="reference/border-image-shorthand-003-ref.html">
|
||||||
|
<meta name="flags" content="">
|
||||||
|
<meta name="assert" content="This test checks that the omitted 'border-image-width' value in shorthand property is set to the initial value.">
|
||||||
|
<style>
|
||||||
|
div
|
||||||
{
|
{
|
||||||
border: 20px double red;
|
border-color: red;
|
||||||
border-image: url("../support/9grid40-30-20-10-lime.png") 40% 15% 20% 5% / / 2 stretch;
|
border-style: double;
|
||||||
|
border-width: 20px;
|
||||||
height: 5px;
|
height: 5px;
|
||||||
margin: 100px;
|
margin: 100px;
|
||||||
width: 5px;
|
width: 5px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#test
|
||||||
|
{
|
||||||
|
/* We first set border-image-width to an entirely arbitrary value */
|
||||||
|
border-image-width: 3;
|
||||||
|
/*
|
||||||
|
and then we check with a shorthand value (which is deliberately
|
||||||
|
omitting the border-image-width sub-property) if the border-image-width
|
||||||
|
sub-property gets reset to its initial default value
|
||||||
|
(which is 1 and not 3)
|
||||||
|
*/
|
||||||
|
border-image: url("support/9grid40-30-20-10-red-old.png") 40% 15% 20% 5% / / 2 stretch;
|
||||||
|
}
|
||||||
|
|
||||||
#reference
|
#reference
|
||||||
{
|
{
|
||||||
border: 20px double red;
|
|
||||||
border-image-outset: 2;
|
border-image-outset: 2;
|
||||||
border-image-repeat: stretch;
|
border-image-repeat: stretch;
|
||||||
border-image-slice: 40% 15% 20% 5%;
|
border-image-slice: 40% 15% 20% 5%;
|
||||||
border-image-source: url("../support/9grid40-30-20-10-lime.png");
|
border-image-source: url("support/9grid40-30-20-10-red-old.png");
|
||||||
border-image-width: 1;
|
border-image-width: 1;
|
||||||
height: 5px;
|
|
||||||
margin: 100px;
|
|
||||||
width: 5px;
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
|
||||||
<body>
|
<p>Test passes if there are 2 identical green squares and <strong>no red</strong>.
|
||||||
<p>Test passes if there are two identical images visible on the page.</p>
|
|
||||||
<div id="test"></div>
|
<div id="test"></div>
|
||||||
<div id="reference"></div>
|
<div id="reference"></div>
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,25 +1,52 @@
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
<!DOCTYPE html>
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
<title>CSS Test: The 'border-image-slice' property with four percentage values</title>
|
<title>CSS Test: The 'border-image-slice' property with four percentage values</title>
|
||||||
<link rel="author" title="Microsoft" href="http://www.microsoft.com/" />
|
<link rel="author" title="Microsoft" href="http://www.microsoft.com/">
|
||||||
<link rel="help" href="http://www.w3.org/TR/css3-background/#the-border-image-slice" />
|
<!--
|
||||||
<meta name="flags" content="image" />
|
Test rehabilitated by Gérard Talbot
|
||||||
<meta name="assert" content="This test checks that the border image is sliced into nine regions with inward offsets, '40%' from the top, '15%' from the right,'20%' from the bottom, and '5%' from the left edges of the image. Percentages are relative to the size of the image: the width of the image for the horizontal offsets, the height for vertical offsets." />
|
2020-05-27 and 2020-09-28
|
||||||
<style type="text/css">
|
-->
|
||||||
|
<link rel="help" href="http://www.w3.org/TR/css3-background/#the-border-image-slice">
|
||||||
|
<link rel="match" href="reference/border-image-slice-005-ref.html">
|
||||||
|
<meta name="flags" content="">
|
||||||
|
<meta name="assert" content="This test checks that the border image is sliced into nine regions with inward offsets, '40%' from the top, '30%' from the right,'20%' from the bottom, and '10%' from the left edges of the image. Percentages are relative to the size of the image: the width of the image for the horizontal offsets, the height for vertical offsets.">
|
||||||
|
<style>
|
||||||
div
|
div
|
||||||
{
|
{
|
||||||
border: 40px double red;
|
background-color: orange;
|
||||||
border-image-slice: 40% 15% 20% 5%;
|
border-color: red;
|
||||||
border-image-source: url("../support/9grid40-30-20-10-red.png");
|
border-style: double;
|
||||||
|
border-width: 40px;
|
||||||
|
border-image-slice: 40% 30% 20% 10%;
|
||||||
|
/*
|
||||||
|
The original test was using 'border-image-slice: 40% 15% 20% 5%'.
|
||||||
|
*/
|
||||||
|
border-image-source: url("support/9grid40-30-20-10-red.png");
|
||||||
|
/*
|
||||||
|
The top side uses 3 blue borders of 24px wide interleaved with 2
|
||||||
|
transparent areas of 24px wide.
|
||||||
|
So: 5 times 24px == 120px which is 40% of 300px
|
||||||
|
|
||||||
|
The right side uses 3 blue borders of 18px wide interleaved with 2
|
||||||
|
transparent areas of 18px wide.
|
||||||
|
So: 5 times 18px == 90px which is 30% of 300px
|
||||||
|
|
||||||
|
The bottom side uses 3 blue borders of 4px wide interleaved with 2
|
||||||
|
transparent areas of 12px wide.
|
||||||
|
So: 5 times 12px == 60px which is 20% of 300px
|
||||||
|
|
||||||
|
The left side uses 3 blue borders of 6px wide interleaved with 2
|
||||||
|
transparent areas of 6px wide.
|
||||||
|
So: 5 times 6px == 30px which is 10% of 300px
|
||||||
|
*/
|
||||||
height: 100px;
|
height: 100px;
|
||||||
margin: 50px;
|
margin: 50px;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
|
||||||
<body>
|
<p>Test passes if there is a filled orange rectangle inside 3 blue borders interleaved with 2 orange borders and <strong>no red</strong>.
|
||||||
<p>Test passes if there is no red visible on the page.</p>
|
|
||||||
<div></div>
|
<div></div>
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -1,26 +1,52 @@
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
<!DOCTYPE html>
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
<title>CSS Test: The 'border-image-slice' property with the 'fill' keyword</title>
|
<title>CSS Test: The 'border-image-slice' property with the 'fill' keyword</title>
|
||||||
<link rel="author" title="Microsoft" href="http://www.microsoft.com/" />
|
<link rel="author" title="Microsoft" href="http://www.microsoft.com/">
|
||||||
<link rel="help" href="http://www.w3.org/TR/css3-background/#the-border-image-slice" />
|
<!--
|
||||||
<meta name="flags" content="image" />
|
Test rehabilitated by Gérard Talbot
|
||||||
<meta name="assert" content="This test checks that the 'fill' keyword, if present, causes the middle part of the border-image to be preserved." />
|
2020-05-27 and 2020-09-28
|
||||||
<style type="text/css">
|
-->
|
||||||
|
<link rel="help" href="http://www.w3.org/TR/css3-background/#the-border-image-slice">
|
||||||
|
<link rel="match" href="reference/border-image-slice-007-ref.html">
|
||||||
|
<meta name="flags" content="">
|
||||||
|
<meta name="assert" content="This test checks that the 'fill' keyword, if present, causes the middle part of the border-image to be preserved.">
|
||||||
|
<style>
|
||||||
div
|
div
|
||||||
{
|
{
|
||||||
background-color: red;
|
background-color: orange;
|
||||||
border: 40px double red;
|
border-color: red;
|
||||||
border-image-slice: 40% 15% 20% 5% fill;
|
border-style: double;
|
||||||
border-image-source: url("../support/9grid40-30-20-10-lime.png");
|
border-width: 40px;
|
||||||
|
border-image-slice: 40% 30% 20% 10% fill;
|
||||||
|
/*
|
||||||
|
The original test was using 'border-image-slice: 40% 15% 20% 5% fill'.
|
||||||
|
*/
|
||||||
|
border-image-source: url("support/9grid40-30-20-10-green.png");
|
||||||
|
/*
|
||||||
|
The top side uses 3 blue borders of 24px wide interleaved with 2
|
||||||
|
transparent areas of 24px wide.
|
||||||
|
So: 5 times 24px == 120px which is 40% of 300px
|
||||||
|
|
||||||
|
The right side uses 3 blue borders of 18px wide interleaved with 2
|
||||||
|
transparent areas of 18px wide.
|
||||||
|
So: 5 times 18px == 90px which is 30% of 300px
|
||||||
|
|
||||||
|
The bottom side uses 3 blue borders of 4px wide interleaved with 2
|
||||||
|
transparent areas of 12px wide.
|
||||||
|
So: 5 times 12px == 60px which is 20% of 300px
|
||||||
|
|
||||||
|
The left side uses 3 blue borders of 6px wide interleaved with 2
|
||||||
|
transparent areas of 6px wide.
|
||||||
|
So: 5 times 6px == 30px which is 10% of 300px
|
||||||
|
*/
|
||||||
height: 100px;
|
height: 100px;
|
||||||
margin: 50px;
|
margin: 50px;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
|
||||||
<body>
|
<p>Test passes if there is a filled green rectangle inside 3 blue borders interleaved with 2 orange borders and <strong>no red</strong>.
|
||||||
<p>Test passes if there is no red visible on the page.</p>
|
|
||||||
<div></div>
|
<div></div>
|
||||||
</body>
|
|
||||||
</html>
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
|
<title>CSS Reference Test</title>
|
||||||
|
|
||||||
|
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div
|
||||||
|
{
|
||||||
|
border: green solid 20px;
|
||||||
|
height: 100px;
|
||||||
|
margin: 50px;
|
||||||
|
width: 100px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there are 2 identical green squares and <strong>no red</strong>.
|
||||||
|
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
<div></div>
|
|
@ -0,0 +1,28 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
|
<title>CSS Reference Test</title>
|
||||||
|
|
||||||
|
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div
|
||||||
|
{
|
||||||
|
border: green solid 20px;
|
||||||
|
height: 85px;
|
||||||
|
margin: 60px 60px 20px;
|
||||||
|
width: 85px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#second
|
||||||
|
{
|
||||||
|
margin-top: 0px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there are 2 identical green squares and <strong>no red</strong>.
|
||||||
|
|
||||||
|
<div></div>
|
||||||
|
|
||||||
|
<div id="second"></div>
|
|
@ -0,0 +1,30 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
|
<title>CSS Reference Test</title>
|
||||||
|
|
||||||
|
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div#outer
|
||||||
|
{
|
||||||
|
background-color: orange;
|
||||||
|
border: blue double 24px;
|
||||||
|
margin: 50px;
|
||||||
|
padding: 8px;
|
||||||
|
width: 216px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#inner
|
||||||
|
{
|
||||||
|
border: blue solid 8px;
|
||||||
|
height: 100px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled orange rectangle inside 3 blue borders interleaved with 2 orange borders and <strong>no red</strong>.
|
||||||
|
|
||||||
|
<div id="outer">
|
||||||
|
<div id="inner"></div>
|
||||||
|
</div>
|
|
@ -0,0 +1,31 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
|
||||||
|
<title>CSS Reference Test</title>
|
||||||
|
|
||||||
|
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div#outer
|
||||||
|
{
|
||||||
|
background-color: orange;
|
||||||
|
border: blue double 24px;
|
||||||
|
margin: 50px;
|
||||||
|
padding: 8px;
|
||||||
|
width: 216px;
|
||||||
|
}
|
||||||
|
|
||||||
|
div#inner
|
||||||
|
{
|
||||||
|
background-color: green;
|
||||||
|
border: blue solid 8px;
|
||||||
|
height: 100px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green rectangle inside 3 blue borders interleaved with 2 orange borders and <strong>no red</strong>.
|
||||||
|
|
||||||
|
<div id="outer">
|
||||||
|
<div id="inner"></div>
|
||||||
|
</div>
|
Binary file not shown.
After Width: | Height: | Size: 6.1 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.5 KiB |
Binary file not shown.
After Width: | Height: | Size: 9.4 KiB |
|
@ -1,21 +1,23 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>display: math and inline-math on non-MathML compute to flow</title>
|
<title>display: math display values on non-MathML compute to flow</title>
|
||||||
<link rel="help" href="https://drafts.csswg.org/css-display/#the-display-properties">
|
<link rel="help" href="https://drafts.csswg.org/css-display/#the-display-properties">
|
||||||
<script src="/resources/testharness.js"></script>
|
<script src="/resources/testharness.js"></script>
|
||||||
<script src="/resources/testharnessreport.js"></script>
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
|
||||||
<div id="container">
|
<div id="container">
|
||||||
|
|
||||||
<div data-expected="block" style="display: math;"></div>
|
<div data-expected="inline" style="display: math;"></div>
|
||||||
<div data-expected="inline" style="display: inline-math;"></div>
|
|
||||||
<div data-expected="inline" style="display: inline math;"></div>
|
<div data-expected="inline" style="display: inline math;"></div>
|
||||||
|
<div data-expected="inline" style="display: math inline;"></div>
|
||||||
<div data-expected="block" style="display: block math;"></div>
|
<div data-expected="block" style="display: block math;"></div>
|
||||||
|
<div data-expected="block" style="display: math block;"></div>
|
||||||
|
|
||||||
<svg data-expected="block" style="display: math;"></svg>
|
<svg data-expected="inline" style="display: math;"></svg>
|
||||||
<svg data-expected="inline" style="display: inline-math;"></svg>
|
|
||||||
<svg data-expected="inline" style="display: inline math;"></svg>
|
<svg data-expected="inline" style="display: inline math;"></svg>
|
||||||
|
<svg data-expected="inline" style="display: math inline;"></svg>
|
||||||
<svg data-expected="block" style="display: block math;"></svg>
|
<svg data-expected="block" style="display: block math;"></svg>
|
||||||
|
<svg data-expected="block" style="display: math block;"></svg>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<title>Aspect-ratio items with undefined specified size suggestion</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#min-size-auto">
|
||||||
|
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1667668">
|
||||||
|
<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
|
||||||
|
<meta name="assert" content="Flex item with auto height and fixed max-height (in a column-oriented flex container) should have an undefined specified size suggestion.">
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square.</p>
|
||||||
|
<div style="display: flex; flex-direction: column; ">
|
||||||
|
<img src="support/200x200-green.png" style="max-height:150px; width:100px;">
|
||||||
|
</div>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<title>Aspect-ratio items with undefined specified size suggestion</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-flexbox-1/#min-size-auto">
|
||||||
|
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1667668">
|
||||||
|
<link rel="match" href="../reference/ref-filled-green-100px-square-only.html">
|
||||||
|
<meta name="assert" content="Flex item with auto width and fixed max-width (in a row-oriented flex container) should have an undefined specified size suggestion.">
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square.</p>
|
||||||
|
<div style="display: flex;">
|
||||||
|
<img src="support/200x200-green.png" style="max-width:150px; height:100px;">
|
||||||
|
</div>
|
|
@ -0,0 +1,19 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<link rel="help" href="https://bugs.chromium.org/p/chromium/issues/detail?id=1127415">
|
||||||
|
<meta name="assert" content="The presence of a scrollbar should not make a min-sized flexbox, and a single flex-item differ in size.">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<div style="display: flex; width: 100px;">
|
||||||
|
<div id="outer" style="display: flex; width: min-content; height: 100px;">
|
||||||
|
<div id="inner" style="flex: 0 0 auto; overflow-y: auto;">
|
||||||
|
<div style="width: 100px; height: 3000px;"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<script>
|
||||||
|
test(() => {
|
||||||
|
const outer = document.getElementById('outer');
|
||||||
|
const inner = document.getElementById('inner');
|
||||||
|
assert_equals(outer.getBoundingClientRect().width, inner.getBoundingClientRect().width);
|
||||||
|
});
|
||||||
|
</script>
|
|
@ -15,14 +15,14 @@ function rejection(promise) {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-initial',
|
'ascent-override-initial',
|
||||||
'url(https://example.com/font.woff)');
|
'url(https://{{host}}/font.woff)');
|
||||||
assert_equals(face.ascentOverride, 'normal');
|
assert_equals(face.ascentOverride, 'normal');
|
||||||
}, "Initial value of ascentOverride should be 'normal'");
|
}, "Initial value of ascentOverride should be 'normal'");
|
||||||
|
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-initialize-with-normal',
|
'ascent-override-initialize-with-normal',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{ascentOverride: 'normal'});
|
{ascentOverride: 'normal'});
|
||||||
assert_equals(face.ascentOverride, 'normal');
|
assert_equals(face.ascentOverride, 'normal');
|
||||||
}, "Initialize ascentOverride with 'normal' should succeed");
|
}, "Initialize ascentOverride with 'normal' should succeed");
|
||||||
|
@ -30,7 +30,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-initialize-with-percentage',
|
'ascent-override-initialize-with-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{ascentOverride: '50%'});
|
{ascentOverride: '50%'});
|
||||||
assert_equals(face.ascentOverride, '50%');
|
assert_equals(face.ascentOverride, '50%');
|
||||||
}, "Initialize ascentOverride with a percentage should succeed");
|
}, "Initialize ascentOverride with a percentage should succeed");
|
||||||
|
@ -38,7 +38,7 @@ test(() => {
|
||||||
promise_test(async () => {
|
promise_test(async () => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-initialize-with-negative-percentage',
|
'ascent-override-initialize-with-negative-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{ascentOverride: '-50%'});
|
{ascentOverride: '-50%'});
|
||||||
const error = await rejection(face.load());
|
const error = await rejection(face.load());
|
||||||
assert_equals('error', face.status);
|
assert_equals('error', face.status);
|
||||||
|
@ -48,7 +48,7 @@ promise_test(async () => {
|
||||||
promise_test(async () => {
|
promise_test(async () => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-initialize-with-non-percentage',
|
'ascent-override-initialize-with-non-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{ascentOverride: '10px'});
|
{ascentOverride: '10px'});
|
||||||
const error = await rejection(face.load());
|
const error = await rejection(face.load());
|
||||||
assert_equals('error', face.status);
|
assert_equals('error', face.status);
|
||||||
|
@ -58,7 +58,7 @@ promise_test(async () => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-normal-to-percentage',
|
'ascent-override-normal-to-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{ascentOverride: 'normal'});
|
{ascentOverride: 'normal'});
|
||||||
face.ascentOverride = '50%';
|
face.ascentOverride = '50%';
|
||||||
assert_equals(face.ascentOverride, '50%');
|
assert_equals(face.ascentOverride, '50%');
|
||||||
|
@ -67,7 +67,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-percentage-to-normal',
|
'ascent-override-percentage-to-normal',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{ascentOverride: '50%'});
|
{ascentOverride: '50%'});
|
||||||
face.ascentOverride = 'normal';
|
face.ascentOverride = 'normal';
|
||||||
assert_equals(face.ascentOverride, 'normal');
|
assert_equals(face.ascentOverride, 'normal');
|
||||||
|
@ -76,7 +76,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'ascent-override-set-to-invalid',
|
'ascent-override-set-to-invalid',
|
||||||
'url(https://example.com/font.woff)');
|
'url(https://{{host}}/font.woff)');
|
||||||
assert_throws_dom('SyntaxError', () => {face.ascentOverride = '10px'});
|
assert_throws_dom('SyntaxError', () => {face.ascentOverride = '10px'});
|
||||||
}, "Changing ascentOverride to invalid value should fail");
|
}, "Changing ascentOverride to invalid value should fail");
|
||||||
|
|
||||||
|
@ -85,14 +85,14 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-initial',
|
'descent-override-initial',
|
||||||
'url(https://example.com/font.woff)');
|
'url(https://{{host}}/font.woff)');
|
||||||
assert_equals(face.descentOverride, 'normal');
|
assert_equals(face.descentOverride, 'normal');
|
||||||
}, "Initial value of descentOverride should be 'normal'");
|
}, "Initial value of descentOverride should be 'normal'");
|
||||||
|
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-initialize-with-normal',
|
'descent-override-initialize-with-normal',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{descentOverride: 'normal'});
|
{descentOverride: 'normal'});
|
||||||
assert_equals(face.descentOverride, 'normal');
|
assert_equals(face.descentOverride, 'normal');
|
||||||
}, "Initialize descentOverride with 'normal' should succeed");
|
}, "Initialize descentOverride with 'normal' should succeed");
|
||||||
|
@ -100,7 +100,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-initialize-with-percentage',
|
'descent-override-initialize-with-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{descentOverride: '50%'});
|
{descentOverride: '50%'});
|
||||||
assert_equals(face.descentOverride, '50%');
|
assert_equals(face.descentOverride, '50%');
|
||||||
}, "Initialize descentOverride with a percentage should succeed");
|
}, "Initialize descentOverride with a percentage should succeed");
|
||||||
|
@ -108,7 +108,7 @@ test(() => {
|
||||||
promise_test(async () => {
|
promise_test(async () => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-initialize-with-negative-percentage',
|
'descent-override-initialize-with-negative-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{descentOverride: '-50%'});
|
{descentOverride: '-50%'});
|
||||||
const error = await rejection(face.load());
|
const error = await rejection(face.load());
|
||||||
assert_equals('error', face.status);
|
assert_equals('error', face.status);
|
||||||
|
@ -118,7 +118,7 @@ promise_test(async () => {
|
||||||
promise_test(async () => {
|
promise_test(async () => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-initialize-with-non-percentage',
|
'descent-override-initialize-with-non-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{descentOverride: '10px'});
|
{descentOverride: '10px'});
|
||||||
const error = await rejection(face.load());
|
const error = await rejection(face.load());
|
||||||
assert_equals('error', face.status);
|
assert_equals('error', face.status);
|
||||||
|
@ -128,7 +128,7 @@ promise_test(async () => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-normal-to-percentage',
|
'descent-override-normal-to-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{descentOverride: 'normal'});
|
{descentOverride: 'normal'});
|
||||||
face.descentOverride = '50%';
|
face.descentOverride = '50%';
|
||||||
assert_equals(face.descentOverride, '50%');
|
assert_equals(face.descentOverride, '50%');
|
||||||
|
@ -137,7 +137,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-percentage-to-normal',
|
'descent-override-percentage-to-normal',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{descentOverride: '50%'});
|
{descentOverride: '50%'});
|
||||||
face.descentOverride = 'normal';
|
face.descentOverride = 'normal';
|
||||||
assert_equals(face.descentOverride, 'normal');
|
assert_equals(face.descentOverride, 'normal');
|
||||||
|
@ -146,7 +146,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'descent-override-set-to-invalid',
|
'descent-override-set-to-invalid',
|
||||||
'url(https://example.com/font.woff)');
|
'url(https://{{host}}/font.woff)');
|
||||||
assert_throws_dom('SyntaxError', () => {face.descentOverride = '10px'});
|
assert_throws_dom('SyntaxError', () => {face.descentOverride = '10px'});
|
||||||
}, "Changing descentOverride to invalid value should fail");
|
}, "Changing descentOverride to invalid value should fail");
|
||||||
|
|
||||||
|
@ -155,14 +155,14 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-initial',
|
'lineGap-override-initial',
|
||||||
'url(https://example.com/font.woff)');
|
'url(https://{{host}}/font.woff)');
|
||||||
assert_equals(face.lineGapOverride, 'normal');
|
assert_equals(face.lineGapOverride, 'normal');
|
||||||
}, "Initial value of lineGapOverride should be 'normal'");
|
}, "Initial value of lineGapOverride should be 'normal'");
|
||||||
|
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-initialize-with-normal',
|
'lineGap-override-initialize-with-normal',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{lineGapOverride: 'normal'});
|
{lineGapOverride: 'normal'});
|
||||||
assert_equals(face.lineGapOverride, 'normal');
|
assert_equals(face.lineGapOverride, 'normal');
|
||||||
}, "Initialize lineGapOverride with 'normal' should succeed");
|
}, "Initialize lineGapOverride with 'normal' should succeed");
|
||||||
|
@ -170,7 +170,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-initialize-with-percentage',
|
'lineGap-override-initialize-with-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{lineGapOverride: '50%'});
|
{lineGapOverride: '50%'});
|
||||||
assert_equals(face.lineGapOverride, '50%');
|
assert_equals(face.lineGapOverride, '50%');
|
||||||
}, "Initialize lineGapOverride with a percentage should succeed");
|
}, "Initialize lineGapOverride with a percentage should succeed");
|
||||||
|
@ -178,7 +178,7 @@ test(() => {
|
||||||
promise_test(async () => {
|
promise_test(async () => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-initialize-with-negative-percentage',
|
'lineGap-override-initialize-with-negative-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{lineGapOverride: '-50%'});
|
{lineGapOverride: '-50%'});
|
||||||
const error = await rejection(face.load());
|
const error = await rejection(face.load());
|
||||||
assert_equals('error', face.status);
|
assert_equals('error', face.status);
|
||||||
|
@ -188,7 +188,7 @@ promise_test(async () => {
|
||||||
promise_test(async () => {
|
promise_test(async () => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-initialize-with-non-percentage',
|
'lineGap-override-initialize-with-non-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{lineGapOverride: '10px'});
|
{lineGapOverride: '10px'});
|
||||||
const error = await rejection(face.load());
|
const error = await rejection(face.load());
|
||||||
assert_equals('error', face.status);
|
assert_equals('error', face.status);
|
||||||
|
@ -198,7 +198,7 @@ promise_test(async () => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-normal-to-percentage',
|
'lineGap-override-normal-to-percentage',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{lineGapOverride: 'normal'});
|
{lineGapOverride: 'normal'});
|
||||||
face.lineGapOverride = '50%';
|
face.lineGapOverride = '50%';
|
||||||
assert_equals(face.lineGapOverride, '50%');
|
assert_equals(face.lineGapOverride, '50%');
|
||||||
|
@ -207,7 +207,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-percentage-to-normal',
|
'lineGap-override-percentage-to-normal',
|
||||||
'url(https://example.com/font.woff)',
|
'url(https://{{host}}/font.woff)',
|
||||||
{lineGapOverride: '50%'});
|
{lineGapOverride: '50%'});
|
||||||
face.lineGapOverride = 'normal';
|
face.lineGapOverride = 'normal';
|
||||||
assert_equals(face.lineGapOverride, 'normal');
|
assert_equals(face.lineGapOverride, 'normal');
|
||||||
|
@ -216,7 +216,7 @@ test(() => {
|
||||||
test(() => {
|
test(() => {
|
||||||
const face = new FontFace(
|
const face = new FontFace(
|
||||||
'lineGap-override-set-to-invalid',
|
'lineGap-override-set-to-invalid',
|
||||||
'url(https://example.com/font.woff)');
|
'url(https://{{host}}/font.woff)');
|
||||||
assert_throws_dom('SyntaxError', () => {face.lineGapOverride = '10px'});
|
assert_throws_dom('SyntaxError', () => {face.lineGapOverride = '10px'});
|
||||||
}, "Changing lineGapOverride to invalid value should fail");
|
}, "Changing lineGapOverride to invalid value should fail");
|
||||||
</script>
|
</script>
|
|
@ -0,0 +1,44 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<title>SyntaxError thrown when matching loading values with var()</title>
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-font-loading/#font-face-set-load">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-font-loading/#find-the-matching-font-faces">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<script>
|
||||||
|
|
||||||
|
function load_on_worker(keyword) {
|
||||||
|
return new Promise((resolve, reject) =>{
|
||||||
|
var blob = new Blob([`
|
||||||
|
self.fonts.load('${keyword}').then(
|
||||||
|
()=>{ self.postMessage('success') },
|
||||||
|
(e)=>{ self.postMessage(e) }
|
||||||
|
);
|
||||||
|
`]);
|
||||||
|
var blob_url = window.URL.createObjectURL(blob);
|
||||||
|
let worker = new Worker(blob_url);
|
||||||
|
worker.onmessage = msg => {
|
||||||
|
if (msg === 'success')
|
||||||
|
resolve(msg.data)
|
||||||
|
else
|
||||||
|
reject(msg.data)
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
promise_test(test => {
|
||||||
|
return promise_rejects_dom(test, 'SyntaxError', document.fonts.load('var(--x) serif'));
|
||||||
|
}, 'Loading "var(--x) serif" causes SyntaxError (document)')
|
||||||
|
|
||||||
|
promise_test(test => {
|
||||||
|
return promise_rejects_dom(test, 'SyntaxError', document.fonts.load('var(--x, 10px) serif'));
|
||||||
|
}, 'Loading "var(--x, 10px) serif" causes SyntaxError (document)')
|
||||||
|
|
||||||
|
promise_test(test => {
|
||||||
|
return promise_rejects_dom(test, 'SyntaxError', load_on_worker('var(--x) serif'));
|
||||||
|
}, 'Loading "var(--x) serif" causes SyntaxError (worker)')
|
||||||
|
|
||||||
|
promise_test(test => {
|
||||||
|
return promise_rejects_dom(test, 'SyntaxError', load_on_worker('var(--x, 10px) serif'));
|
||||||
|
}, 'Loading "var(--x, 10px) serif" causes SyntaxError (worker)')
|
||||||
|
|
||||||
|
</script>
|
|
@ -0,0 +1,13 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>CSS Grid Layout Test: % max height of grid items</title>
|
||||||
|
<link rel="author" title="David Grogan" href="mailto:dgrogan@chromium.org">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-grid/#grid-item-sizing">
|
||||||
|
<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html">
|
||||||
|
<meta name="assert" content="% max-height of replaced grid items is respected">
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square.</p>
|
||||||
|
|
||||||
|
<div style="display: grid; grid-template-rows: 200px;">
|
||||||
|
<img src="support/200x200-green.png" style="max-height: 50%;">
|
||||||
|
</div>
|
|
@ -6,9 +6,6 @@
|
||||||
.container {
|
.container {
|
||||||
width: 100px;
|
width: 100px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
animation: expand 5s;
|
|
||||||
/* TODO(crbug.com/987969): the will-change: transform should not be needed. */
|
|
||||||
will-change: transform;
|
|
||||||
}
|
}
|
||||||
@keyframes expand {
|
@keyframes expand {
|
||||||
0% { --foo: 0; }
|
0% { --foo: 0; }
|
||||||
|
@ -16,10 +13,13 @@
|
||||||
99% { --foo: 50; }
|
99% { --foo: 50; }
|
||||||
100% { --foo: 100; }
|
100% { --foo: 100; }
|
||||||
}
|
}
|
||||||
|
.animate {
|
||||||
|
background-image: paint(geometry);
|
||||||
|
animation: expand 5s;
|
||||||
|
}
|
||||||
|
|
||||||
#canvas-geometry {
|
#canvas-geometry {
|
||||||
background-color: blue;
|
background-color: blue;
|
||||||
background-image: paint(geometry);
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script src="/common/reftest-wait.js"></script>
|
<script src="/common/reftest-wait.js"></script>
|
||||||
|
@ -48,13 +48,14 @@ CSS.registerProperty({
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// The test is designed to make sure that when the custom property animation is
|
var blob = new Blob([document.getElementById('code').textContent],
|
||||||
// running on the compositor thread, we are getting the right value.
|
{type: 'text/javascript'});
|
||||||
// The "importWorkletAndTerminateTestAfterAsyncPaint" has the logic to rAF
|
CSS.paintWorklet.addModule(URL.createObjectURL(blob)).then(function() {
|
||||||
// two frames before taking a screenshot. So the animation is designed to
|
document.getElementById('canvas-geometry').classList.add('animate');
|
||||||
// be stable after two frames. That is, the 0.01% of 5s is much less than
|
requestAnimationFrame(function() {
|
||||||
// two frames, and thus after two frames, the value of --foo should be stable.
|
takeScreenshot();
|
||||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.paintWorklet, document.getElementById('code').textContent);
|
});
|
||||||
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -6,9 +6,6 @@
|
||||||
.container {
|
.container {
|
||||||
width: 100px;
|
width: 100px;
|
||||||
height: 100px;
|
height: 100px;
|
||||||
animation: expand 5s, clr 5s;
|
|
||||||
/* TODO(crbug.com/987969): the will-change: transform should not be needed. */
|
|
||||||
will-change: transform;
|
|
||||||
}
|
}
|
||||||
@keyframes expand {
|
@keyframes expand {
|
||||||
0% { --foo: 0; }
|
0% { --foo: 0; }
|
||||||
|
@ -22,10 +19,13 @@
|
||||||
99% { --bar: 200; }
|
99% { --bar: 200; }
|
||||||
100% { --bar: 255; }
|
100% { --bar: 255; }
|
||||||
}
|
}
|
||||||
|
.animate {
|
||||||
|
background-image: paint(geometry);
|
||||||
|
animation: expand 5s, clr 5s;
|
||||||
|
}
|
||||||
|
|
||||||
#canvas-geometry {
|
#canvas-geometry {
|
||||||
background-color: blue;
|
background-color: blue;
|
||||||
background-image: paint(geometry);
|
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<script src="/common/reftest-wait.js"></script>
|
<script src="/common/reftest-wait.js"></script>
|
||||||
|
@ -64,13 +64,14 @@ CSS.registerProperty({
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
// The test is designed to make sure that when the custom property animation is
|
var blob = new Blob([document.getElementById('code').textContent],
|
||||||
// running on the compositor thread, we are getting the right value.
|
{type: 'text/javascript'});
|
||||||
// The "importWorkletAndTerminateTestAfterAsyncPaint" has the logic to rAF
|
CSS.paintWorklet.addModule(URL.createObjectURL(blob)).then(function() {
|
||||||
// two frames before taking a screenshot. So the animation is designed to
|
document.getElementById('canvas-geometry').classList.add('animate');
|
||||||
// be stable after two frames. That is, the 0.01% of 5s is much less than
|
requestAnimationFrame(function() {
|
||||||
// two frames, and thus after two frames, the value of --foo should be stable.
|
takeScreenshot();
|
||||||
importWorkletAndTerminateTestAfterAsyncPaint(CSS.paintWorklet, document.getElementById('code').textContent);
|
});
|
||||||
|
});
|
||||||
</script>
|
</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -9,7 +9,6 @@
|
||||||
<style>
|
<style>
|
||||||
div
|
div
|
||||||
{
|
{
|
||||||
background-color: yellow;
|
|
||||||
color: green;
|
color: green;
|
||||||
float: left;
|
float: left;
|
||||||
font-size: 32px;
|
font-size: 32px;
|
||||||
|
@ -28,11 +27,13 @@
|
||||||
|
|
||||||
div.mixed
|
div.mixed
|
||||||
{
|
{
|
||||||
|
background-color: yellow;
|
||||||
text-orientation: mixed;
|
text-orientation: mixed;
|
||||||
}
|
}
|
||||||
|
|
||||||
div.sideways
|
div.sideways
|
||||||
{
|
{
|
||||||
|
background-color: yellow;
|
||||||
text-orientation: sideways;
|
text-orientation: sideways;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,6 +41,11 @@
|
||||||
{
|
{
|
||||||
text-orientation: upright;
|
text-orientation: upright;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
div.upright > span
|
||||||
|
{
|
||||||
|
background-color: yellow;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<p>Test passes if each glyph of the 6 "Selected Text" is green and if there is <strong>no red</strong>.
|
<p>Test passes if each glyph of the 6 "Selected Text" is green and if there is <strong>no red</strong>.
|
||||||
|
@ -48,10 +54,10 @@
|
||||||
|
|
||||||
<div class="vrl sideways">Selected Text</div>
|
<div class="vrl sideways">Selected Text</div>
|
||||||
|
|
||||||
<div class="vrl upright">Selected Text</div>
|
<div class="vrl upright"><span>Selected Text</span></div>
|
||||||
|
|
||||||
<div class="vlr mixed">Selected Text</div>
|
<div class="vlr mixed">Selected Text</div>
|
||||||
|
|
||||||
<div class="vlr sideways">Selected Text</div>
|
<div class="vlr sideways">Selected Text</div>
|
||||||
|
|
||||||
<div class="vlr upright">Selected Text</div>
|
<div class="vlr upright"><span>Selected Text</span></div>
|
||||||
|
|
|
@ -35,6 +35,15 @@
|
||||||
/* Then we set the range boundaries to the children of div#test */
|
/* Then we set the range boundaries to the children of div#test */
|
||||||
window.getSelection().addRange(targetRange);
|
window.getSelection().addRange(targetRange);
|
||||||
/* Finally, we now select such range of content */
|
/* Finally, we now select such range of content */
|
||||||
|
document.getElementById("test").blur();
|
||||||
|
/*
|
||||||
|
Some browsers, like Chromium 80+, will
|
||||||
|
transfer focus to a selected element
|
||||||
|
like a contenteditable div and
|
||||||
|
therefore style the border of
|
||||||
|
such element. We remove such
|
||||||
|
focus with the blur() method.
|
||||||
|
*/
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<title>CSS aspect-ratio: Row flexbox cross size</title>
|
<title>CSS aspect-ratio: Column flexbox cross size</title>
|
||||||
<link rel="author" title="Google LLC" href="https://www.google.com/">
|
<link rel="author" title="Google LLC" href="https://www.google.com/">
|
||||||
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
<link rel="help" href="https://drafts.csswg.org/css-flexbox/#line-sizing" title="9.2.3.B">
|
<link rel="help" href="https://drafts.csswg.org/css-flexbox/#line-sizing" title="9.2.3.B">
|
||||||
|
@ -7,6 +7,6 @@
|
||||||
|
|
||||||
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
|
||||||
<div style="display: inline-flex; flex-direction: column; height: 100px;">
|
<div style="display: inline-flex; flex-direction: column; flex-wrap: wrap; height: 100px;">
|
||||||
<div style="background: green; aspect-ratio: 1/1; min-height: 0; height: 50px; flex: 1;"></div>
|
<div style="background: green; aspect-ratio: 1/1; min-height: 0; height: 50px; flex: 1;"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<title>CSS aspect-ratio: Row flexbox cross size</title>
|
<title>CSS aspect-ratio: Column flexbox cross size</title>
|
||||||
<link rel="author" title="Google LLC" href="https://www.google.com/">
|
<link rel="author" title="Google LLC" href="https://www.google.com/">
|
||||||
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
<link rel="help" href="https://drafts.csswg.org/css-flexbox/#line-sizing" title="9.2.3.B">
|
<link rel="help" href="https://drafts.csswg.org/css-flexbox/#line-sizing" title="9.2.3.B">
|
||||||
|
@ -7,6 +7,6 @@
|
||||||
|
|
||||||
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
|
||||||
<div style="display: inline-flex; flex-direction: column; height: 100px;">
|
<div style="display: inline-flex; flex-direction: column; flex-wrap: wrap; height: 100px;">
|
||||||
<div style="background: green; aspect-ratio: 1/1; min-height: 0; flex: 1 1 50px;"></div>
|
<div style="background: green; aspect-ratio: 1/1; min-height: 0; flex: 1 1 50px;"></div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<title>CSS aspect-ratio: canvas with aspect-ratio, object-fit and object-position</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
|
<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="This test verifies aspect-ratio affects the canvas element's ratio, but not the canvas content's ratio.">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
canvas {
|
||||||
|
width: 100px;
|
||||||
|
aspect-ratio: 1/3;
|
||||||
|
object-fit: contain;
|
||||||
|
object-position: top left;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
window.onload = function() {
|
||||||
|
const canvas = document.querySelector('canvas');
|
||||||
|
const ctx = canvas.getContext('2d');
|
||||||
|
ctx.fillStyle = 'green';
|
||||||
|
ctx.fillRect(0, 0, 200, 200);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<canvas width=200 height=200></canvas>
|
||||||
|
</html>
|
|
@ -0,0 +1,30 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<title>CSS aspect-ratio: canvas with aspect-ratio and contain:size</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/5550">
|
||||||
|
<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="This test verifies aspect-ratio's <ratio> is used to determine the canvas' size because contain:size enforces no intrinsic aspect ratio.">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
canvas {
|
||||||
|
width: 100px;
|
||||||
|
aspect-ratio: 1/1;
|
||||||
|
contain: size;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
window.onload = function() {
|
||||||
|
const canvas = document.querySelector('canvas');
|
||||||
|
const ctx = canvas.getContext('2d');
|
||||||
|
ctx.fillStyle = 'green';
|
||||||
|
ctx.fillRect(0, 0, 200, 200);
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<canvas width=200 height=200></canvas>
|
||||||
|
</html>
|
|
@ -0,0 +1,28 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<title>CSS aspect-ratio: image with aspect-ratio, object-fit and object-position</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
|
<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="This test verifies aspect-ratio affects the image element's ratio, but not the image content's ratio.">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div {
|
||||||
|
display: inline-block;
|
||||||
|
width: 60px;
|
||||||
|
height: 100px;
|
||||||
|
background: green;
|
||||||
|
}
|
||||||
|
img {
|
||||||
|
height: 100px;
|
||||||
|
aspect-ratio: 3/1;
|
||||||
|
object-fit: contain;
|
||||||
|
object-position: top left;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<!-- object-fit:contain should preserve the image's ratio, and scale it to 40x100. -->
|
||||||
|
<div></div><img src="support/20x50-green.png">
|
||||||
|
</html>
|
|
@ -0,0 +1,21 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<title>CSS aspect-ratio: image with aspect-ratio and contain:size</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/5550">
|
||||||
|
<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="This test verifies aspect-ratio's <ratio> is used to determine the image's size because contain:size enforces no intrinsic aspect ratio.">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
img {
|
||||||
|
width: 100px;
|
||||||
|
aspect-ratio: 1/1;
|
||||||
|
contain: size;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<img src="support/20x50-green.png">
|
||||||
|
</html>
|
|
@ -0,0 +1,28 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<title>CSS aspect-ratio: video with aspect-ratio, object-fit and object-position</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
|
<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="This test verifies aspect-ratio affects the video element's ratio, but not the video content's ratio.">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
div {
|
||||||
|
display: inline-block;
|
||||||
|
width: 60px;
|
||||||
|
height: 100px;
|
||||||
|
background: green;
|
||||||
|
}
|
||||||
|
video {
|
||||||
|
height: 100px;
|
||||||
|
aspect-ratio: 3/1;
|
||||||
|
object-fit: contain;
|
||||||
|
object-position: top left;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<!-- object-fit:contain should preserve the video poster's ratio, and scale it to 40x100. -->
|
||||||
|
<div></div><video poster="support/20x50-green.png"></video>
|
||||||
|
</html>
|
|
@ -0,0 +1,22 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<title>CSS aspect-ratio: video with aspect-ratio and contain:size</title>
|
||||||
|
<link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
|
||||||
|
<link rel="author" title="Mozilla" href="https://www.mozilla.org/">
|
||||||
|
<link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio">
|
||||||
|
<link rel="help" href="https://github.com/w3c/csswg-drafts/issues/5550">
|
||||||
|
<link rel="match" href="../../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="This test verifies aspect-ratio's <ratio> is used to determine the video's size because contain:size enforces no intrinsic aspect ratio.">
|
||||||
|
|
||||||
|
<style>
|
||||||
|
video {
|
||||||
|
width: 100px;
|
||||||
|
aspect-ratio: 1/1;
|
||||||
|
object-fit: fill;
|
||||||
|
contain: size;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<video poster="support/20x50-green.png"></video>
|
||||||
|
</html>
|
|
@ -0,0 +1,32 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<link rel="help" href="https://crbug.com/1128941">
|
||||||
|
<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="A positioned absolute table should respect its main-size, and never go below its min-content size.">
|
||||||
|
<style>
|
||||||
|
table {
|
||||||
|
position: absolute;
|
||||||
|
width: 50%;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
td {
|
||||||
|
width: 100%;
|
||||||
|
line-height: 0;
|
||||||
|
padding: 0;
|
||||||
|
background: red;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100px;
|
||||||
|
height: 50px;
|
||||||
|
background: green;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<div style="width: 200px; height: 200px; position: relative;">
|
||||||
|
<table>
|
||||||
|
<td>
|
||||||
|
<span></span>
|
||||||
|
<span></span>
|
||||||
|
</td>
|
||||||
|
</table>
|
||||||
|
</div>
|
|
@ -0,0 +1,32 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<link rel="help" href="https://crbug.com/1128941">
|
||||||
|
<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="A positioned absolute table should respect its main-size, and never go below its min-content size.">
|
||||||
|
<style>
|
||||||
|
table {
|
||||||
|
position: absolute;
|
||||||
|
width: 10%;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
td {
|
||||||
|
width: 100%;
|
||||||
|
line-height: 0;
|
||||||
|
padding: 0;
|
||||||
|
background: red;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100px;
|
||||||
|
height: 50px;
|
||||||
|
background: green;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<div style="width: 200px; height: 200px; position: relative;">
|
||||||
|
<table>
|
||||||
|
<td>
|
||||||
|
<span></span>
|
||||||
|
<span></span>
|
||||||
|
</td>
|
||||||
|
</table>
|
||||||
|
</div>
|
|
@ -0,0 +1,32 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<link rel="help" href="https://crbug.com/1128941">
|
||||||
|
<link rel="match" href="../reference/ref-filled-green-100px-square.xht">
|
||||||
|
<meta name="assert" content="A positioned absolute table should respect its main-size, and never go below its min-content size.">
|
||||||
|
<style>
|
||||||
|
table {
|
||||||
|
position: absolute;
|
||||||
|
width: 0px;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
td {
|
||||||
|
width: 100%;
|
||||||
|
line-height: 0;
|
||||||
|
padding: 0;
|
||||||
|
background: red;
|
||||||
|
}
|
||||||
|
span {
|
||||||
|
display: inline-block;
|
||||||
|
width: 100px;
|
||||||
|
height: 50px;
|
||||||
|
background: green;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<p>Test passes if there is a filled green square and <strong>no red</strong>.</p>
|
||||||
|
<div style="width: 200px; height: 200px; position: relative;">
|
||||||
|
<table>
|
||||||
|
<td>
|
||||||
|
<span></span>
|
||||||
|
<span></span>
|
||||||
|
</td>
|
||||||
|
</table>
|
||||||
|
</div>
|
|
@ -16,7 +16,29 @@
|
||||||
runPropertyTests('display', [
|
runPropertyTests('display', [
|
||||||
{ syntax: 'none' },
|
{ syntax: 'none' },
|
||||||
{ syntax: 'block' },
|
{ syntax: 'block' },
|
||||||
// and other keywords
|
{ syntax: 'inline' },
|
||||||
|
{ syntax: 'flow-root' },
|
||||||
|
{ syntax: 'table' },
|
||||||
|
{ syntax: 'flex' },
|
||||||
|
{ syntax: 'grid' },
|
||||||
|
{ syntax: 'list-item' },
|
||||||
|
{ syntax: 'table-row-group' },
|
||||||
|
{ syntax: 'table-header-group' },
|
||||||
|
{ syntax: 'table-footer-group' },
|
||||||
|
{ syntax: 'table-row' },
|
||||||
|
{ syntax: 'table-cell' },
|
||||||
|
{ syntax: 'table-column-group' },
|
||||||
|
{ syntax: 'table-column' },
|
||||||
|
{ syntax: 'table-caption' },
|
||||||
|
{ syntax: 'contents' },
|
||||||
|
{ syntax: 'inline-block' },
|
||||||
|
{ syntax: 'inline-table' },
|
||||||
|
{ syntax: 'inline-flex' },
|
||||||
|
{ syntax: 'inline-grid' },
|
||||||
|
]);
|
||||||
|
|
||||||
|
runUnsupportedPropertyTests('display', [
|
||||||
|
'block math', 'math block', 'inline math', 'math inline'
|
||||||
]);
|
]);
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<title>DOMImplementation.createHTMLDocument</title>
|
||||||
|
<link rel=help href="https://dom.spec.whatwg.org/#dom-domimplementation-createhtmldocument">
|
||||||
|
<script src="/resources/testharness.js"></script>
|
||||||
|
<script src="/resources/testharnessreport.js"></script>
|
||||||
|
<div id="log"></div>
|
||||||
|
<script>
|
||||||
|
// Test the document location getter is null outside of browser context
|
||||||
|
test(function() {
|
||||||
|
var iframe = document.createElement("iframe");
|
||||||
|
document.body.appendChild(iframe);
|
||||||
|
var implementation = iframe.contentDocument.implementation;
|
||||||
|
iframe.remove();
|
||||||
|
assert_not_equals(implementation.createHTMLDocument(), null);
|
||||||
|
}, "createHTMLDocument(): from a saved and detached implementation does not return null")
|
||||||
|
</script>
|
|
@ -1,14 +1,5 @@
|
||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
promise_test(async t => {
|
|
||||||
const iterator = navigator.fonts.query();
|
|
||||||
|
|
||||||
await promise_rejects_dom(t, 'SecurityError', (async () => {
|
|
||||||
for await (const f of iterator) {
|
|
||||||
}
|
|
||||||
})());
|
|
||||||
}, 'iteration fails if there is no sticky user activation');
|
|
||||||
|
|
||||||
font_access_test(async t => {
|
font_access_test(async t => {
|
||||||
const iterator = navigator.fonts.query();
|
const iterator = navigator.fonts.query();
|
||||||
|
|
||||||
|
|
|
@ -50,6 +50,18 @@ ctx.font = '20px serif';
|
||||||
ctx.font = '10px inherit';
|
ctx.font = '10px inherit';
|
||||||
_assertSame(ctx.font, '20px serif', "ctx.font", "'20px serif'");
|
_assertSame(ctx.font, '20px serif', "ctx.font", "'20px serif'");
|
||||||
|
|
||||||
|
ctx.font = '20px serif';
|
||||||
|
ctx.font = '10px revert';
|
||||||
|
_assertSame(ctx.font, '20px serif', "ctx.font", "'20px serif'");
|
||||||
|
|
||||||
|
ctx.font = '20px serif';
|
||||||
|
ctx.font = 'var(--x)';
|
||||||
|
_assertSame(ctx.font, '20px serif', "ctx.font", "'20px serif'");
|
||||||
|
|
||||||
|
ctx.font = '20px serif';
|
||||||
|
ctx.font = 'var(--x, 10px serif)';
|
||||||
|
_assertSame(ctx.font, '20px serif', "ctx.font", "'20px serif'");
|
||||||
|
|
||||||
ctx.font = '20px serif';
|
ctx.font = '20px serif';
|
||||||
ctx.font = '1em serif; background: green; margin: 10px';
|
ctx.font = '1em serif; background: green; margin: 10px';
|
||||||
_assertSame(ctx.font, '20px serif', "ctx.font", "'20px serif'");
|
_assertSame(ctx.font, '20px serif', "ctx.font", "'20px serif'");
|
||||||
|
|
|
@ -103,6 +103,18 @@
|
||||||
ctx.font = '10px inherit';
|
ctx.font = '10px inherit';
|
||||||
@assert ctx.font === '20px serif';
|
@assert ctx.font === '20px serif';
|
||||||
|
|
||||||
|
ctx.font = '20px serif';
|
||||||
|
ctx.font = '10px revert';
|
||||||
|
@assert ctx.font === '20px serif';
|
||||||
|
|
||||||
|
ctx.font = '20px serif';
|
||||||
|
ctx.font = 'var(--x)';
|
||||||
|
@assert ctx.font === '20px serif';
|
||||||
|
|
||||||
|
ctx.font = '20px serif';
|
||||||
|
ctx.font = 'var(--x, 10px serif)';
|
||||||
|
@assert ctx.font === '20px serif';
|
||||||
|
|
||||||
ctx.font = '20px serif';
|
ctx.font = '20px serif';
|
||||||
ctx.font = '1em serif; background: green; margin: 10px';
|
ctx.font = '1em serif; background: green; margin: 10px';
|
||||||
@assert ctx.font === '20px serif';
|
@assert ctx.font === '20px serif';
|
||||||
|
|
|
@ -69,6 +69,9 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_found(report);
|
assert_source_location_found(report);
|
||||||
|
assert_equals(report.body.openerURL, undefined);
|
||||||
|
assert_equals(report.body.openeeURL, openee_url);
|
||||||
|
assert_equals(report.body.otherDocumentURL, undefined);
|
||||||
}, name);
|
}, name);
|
||||||
|
|
||||||
runTest(false, "access-from-coop-page-to-openee, same-origin");
|
runTest(false, "access-from-coop-page-to-openee, same-origin");
|
||||||
|
|
|
@ -70,6 +70,9 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_found(report);
|
assert_source_location_found(report);
|
||||||
|
assert_equals(report.body.openerURL, undefined);
|
||||||
|
assert_equals(report.body.openeeURL, "");
|
||||||
|
assert_equals(report.body.otherDocumentURL, undefined);
|
||||||
}, name);
|
}, name);
|
||||||
|
|
||||||
runTest(false, "access-from-coop-page-to-openee, cross-origin");
|
runTest(false, "access-from-coop-page-to-openee, cross-origin");
|
||||||
|
|
|
@ -21,6 +21,8 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
const report_token = token();
|
const report_token = token();
|
||||||
const openee_token = token();
|
const openee_token = token();
|
||||||
|
|
||||||
|
const opener_url = location.href;
|
||||||
|
|
||||||
const reportTo = reportToHeaders(report_token);
|
const reportTo = reportToHeaders(report_token);
|
||||||
const openee_url = same_origin + executor_path +
|
const openee_url = same_origin + executor_path +
|
||||||
reportTo.header + reportTo.coopReportOnlySameOriginHeader + coep_header +
|
reportTo.header + reportTo.coopReportOnlySameOriginHeader + coep_header +
|
||||||
|
@ -46,6 +48,9 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_found(report);
|
assert_source_location_found(report);
|
||||||
|
assert_equals(report.body.openerURL, opener_url);
|
||||||
|
assert_equals(report.body.openeeURL, undefined);
|
||||||
|
assert_equals(report.body.otherDocumentURL, undefined);
|
||||||
}, name);
|
}, name);
|
||||||
|
|
||||||
runTest(false, "access-from-coop-page-to-opener, same-origin");
|
runTest(false, "access-from-coop-page-to-opener, same-origin");
|
||||||
|
|
|
@ -47,6 +47,9 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_found(report);
|
assert_source_location_found(report);
|
||||||
|
assert_equals(report.body.openerURL, "");
|
||||||
|
assert_equals(report.body.openeeURL, undefined);
|
||||||
|
assert_equals(report.body.otherDocumentURL, undefined);
|
||||||
}, name);
|
}, name);
|
||||||
|
|
||||||
runTest(false, "access-from-coop-page-to-opener, cross-origin");
|
runTest(false, "access-from-coop-page-to-opener, cross-origin");
|
||||||
|
|
|
@ -81,6 +81,9 @@ promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_found(report);
|
assert_source_location_found(report);
|
||||||
|
assert_equals(report.body.openerURL, undefined);
|
||||||
|
assert_equals(report.body.openeeURL, undefined);
|
||||||
|
assert_equals(report.body.otherDocumentURL, other_url.replace(/"/g, '%22'));
|
||||||
}, "access-from-coop-page-to-other (COOP-RO)");
|
}, "access-from-coop-page-to-other (COOP-RO)");
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -82,6 +82,9 @@ promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_found(report);
|
assert_source_location_found(report);
|
||||||
|
assert_equals(report.body.openerURL, undefined);
|
||||||
|
assert_equals(report.body.openeeURL, undefined);
|
||||||
|
assert_equals(report.body.otherDocumentURL, "");
|
||||||
}, "access-from-coop-page-to-other (COOP-RO)");
|
}, "access-from-coop-page-to-other (COOP-RO)");
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -63,6 +63,9 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_missing(report);
|
assert_source_location_missing(report);
|
||||||
|
assert_equals(report.body.openerURL, undefined);
|
||||||
|
assert_equals(report.body.openeeURL, openee_url);
|
||||||
|
assert_equals(report.body.otherDocumentURL, undefined);
|
||||||
}, name);
|
}, name);
|
||||||
|
|
||||||
runTest(false, "access-to-coop-page-from-openee, same-origin");
|
runTest(false, "access-to-coop-page-from-openee, same-origin");
|
||||||
|
|
|
@ -64,6 +64,9 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_missing(report);
|
assert_source_location_missing(report);
|
||||||
|
assert_equals(report.body.openerURL, undefined);
|
||||||
|
assert_equals(report.body.openeeURL, "");
|
||||||
|
assert_equals(report.body.otherDocumentURL, undefined);
|
||||||
}, name);
|
}, name);
|
||||||
|
|
||||||
runTest(false, "access-to-coop-page-from-openee, cross-origin");
|
runTest(false, "access-to-coop-page-from-openee, cross-origin");
|
||||||
|
|
|
@ -22,6 +22,8 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
const openee_token = token();
|
const openee_token = token();
|
||||||
const opener_token = token(); // The current test window.
|
const opener_token = token(); // The current test window.
|
||||||
|
|
||||||
|
const opener_url = location.href;
|
||||||
|
|
||||||
const reportTo = reportToHeaders(report_token);
|
const reportTo = reportToHeaders(report_token);
|
||||||
const openee_url = same_origin + executor_path + reportTo.header +
|
const openee_url = same_origin + executor_path + reportTo.header +
|
||||||
reportTo.coopReportOnlySameOriginHeader + coep_header +
|
reportTo.coopReportOnlySameOriginHeader + coep_header +
|
||||||
|
@ -53,6 +55,9 @@ let runTest = (openee_redirect, name) => promise_test(async t => {
|
||||||
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
assert_equals(report.body.effectivePolicy, "same-origin-plus-coep");
|
||||||
assert_equals(report.body.property, "blur");
|
assert_equals(report.body.property, "blur");
|
||||||
assert_source_location_missing(report);
|
assert_source_location_missing(report);
|
||||||
|
assert_equals(report.body.openerURL, opener_url);
|
||||||
|
assert_equals(report.body.openeeURL, undefined);
|
||||||
|
assert_equals(report.body.otherDocumentURL, undefined);
|
||||||
}, name);
|
}, name);
|
||||||
|
|
||||||
runTest(false, "access-to-coop-page-from-opener, same-origin");
|
runTest(false, "access-to-coop-page-from-opener, same-origin");
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue