mirror of
https://github.com/servo/servo.git
synced 2025-08-06 14:10:11 +01:00
Update web-platform-tests to revision 1c0b752760fb1ecad549c887a0829c43196b5a8b
This commit is contained in:
parent
2dd4277ed6
commit
4934c35708
79 changed files with 712 additions and 388 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
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[hit-test-floats-004.html]
|
||||
[Miss float below something else]
|
||||
expected: FAIL
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[flexbox_justifycontent-center-overflow.html]
|
||||
expected: FAIL
|
|
@ -17,3 +17,6 @@
|
|||
[test the top of layer]
|
||||
expected: FAIL
|
||||
|
||||
[test some point of the element: top left corner]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[elementsFromPoint-invalid-cases.html]
|
||||
[The root element is the last element returned for otherwise empty queries within the viewport]
|
||||
expected: FAIL
|
||||
|
|
@ -312,24 +312,24 @@
|
|||
[Response: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||
expected: NOTRUN
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;charset=gbk text/plain text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -53,3 +53,12 @@
|
|||
[combined text/javascript ]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;charset=windows-1252 error text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript x/x]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -11,3 +11,6 @@
|
|||
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
||||
expected: FAIL
|
||||
|
||||
[X-Content-Type-Options%3A%20%2Cnosniff]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[traverse_the_history_5.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[cross-origin-objects-on-new-window.html]
|
||||
expected: TIMEOUT
|
|
@ -1,4 +1,5 @@
|
|||
[embedded-opener-remove-frame.html]
|
||||
expected: CRASH
|
||||
[opener of discarded nested browsing context]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -171,6 +171,3 @@
|
|||
[XHTML img usemap="#hash-id"]
|
||||
expected: FAIL
|
||||
|
||||
[HTML (standards) IMG usemap="no-hash-name"]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[iframe_sandbox_popups_escaping-2.html]
|
||||
expected: TIMEOUT
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[iframe_sandbox_popups_escaping-3.html]
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[iframe_sandbox_popups_nonescaping-2.html]
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[form-double-submit-2.html]
|
||||
[preventDefault should allow onclick submit() to succeed]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[script-onerror-insertion-point-2.html]
|
||||
expected: TIMEOUT
|
|
@ -1,4 +0,0 @@
|
|||
[module-delayed.html]
|
||||
[async document.write in a module]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[module-static-import-delayed.html]
|
||||
[document.write in an imported module]
|
||||
expected: FAIL
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
[ignore-opens-during-unload.window.html]
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[document.open should bail out when ignore-opens-during-unload is greater than 0 during visibilitychange event (open(parent) while unloading parent and child)]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[promise-job-entry.html]
|
||||
expected: TIMEOUT
|
||||
[Fulfillment handler on fulfilled promise]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -16,5 +15,5 @@
|
|||
expected: FAIL
|
||||
|
||||
[Fulfillment handler on pending-then-fulfilled promise]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
[finalizationregistry-cleanupCallback-gets-a-microtask.optional.any.worker.html]
|
||||
expected: ERROR
|
||||
|
||||
[finalizationregistry-cleanupCallback-gets-a-microtask.optional.any.html]
|
||||
expected: ERROR
|
|
@ -182,3 +182,6 @@
|
|||
[X Stitched sine-wave buffers at sample rate 43800 does not equal [0,0.06264832615852356,0.12505052983760834,0.18696144223213196,0.24813786149024963,0.308339387178421,0.36732959747314453,0.4248766601085663,0.480754554271698,0.5347436666488647,0.5866320133209229,0.6362156271934509,0.6832997798919678,0.7276994585990906,0.7692402601242065,0.8077589869499207...\] with an element-wise tolerance of {"absoluteThreshold":0.0038986,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[28696\]\t-9.0234480000000000e+6\t9.3139332532882690e-1\t9.0234489313933253e+6\t9.6881185273768324e+6\t3.8985999999999999e-3\n\t[28697\]\t7.0477002859115601e-1\t9.0675884485244751e-1\t2.0198881626129150e-1\t2.2275913536212616e-1\t3.8985999999999999e-3\n\tMax AbsError of 9.0234489313933253e+6 at index of 28696.\n\tMax RelError of 9.6881185273768324e+6 at index of 28696.\n]
|
||||
expected: FAIL
|
||||
|
||||
[X Stitched sine-wave buffers at sample rate 43800 does not equal [0,0.06264832615852356,0.12505052983760834,0.18696144223213196,0.24813786149024963,0.308339387178421,0.36732959747314453,0.4248766601085663,0.480754554271698,0.5347436666488647,0.5866320133209229,0.6362156271934509,0.6832997798919678,0.7276994585990906,0.7692402601242065,0.8077589869499207...\] with an element-wise tolerance of {"absoluteThreshold":0.0038986,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[28696\]\t-2.6526414170903011e-32\t9.3139332532882690e-1\t9.3139332532882690e-1\t1.0000000000000000e+0\t3.8985999999999999e-3\n\t[28697\]\t7.0477002859115601e-1\t9.0675884485244751e-1\t2.0198881626129150e-1\t2.2275913536212616e-1\t3.8985999999999999e-3\n\tMax AbsError of 9.3139332532882690e-1 at index of 28696.\n\tMax RelError of 1.0000000000000000e+0 at index of 28696.\n]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[audiocontext-detached-execution-context.tentative.html]
|
||||
[audiocontext-detached-execution-context.html]
|
||||
expected: TIMEOUT
|
||||
[Executing "decoding-on-detached-iframe"]
|
||||
expected: TIMEOUT
|
|
@ -0,0 +1,11 @@
|
|||
[promise-methods-after-discard.html]
|
||||
expected: TIMEOUT
|
||||
[resume()]
|
||||
expected: TIMEOUT
|
||||
|
||||
[close()]
|
||||
expected: NOTRUN
|
||||
|
||||
[suspend()]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
[offlineaudiocontext-detached-execution-context.html]
|
||||
expected: TIMEOUT
|
||||
[Executing "decoding-on-detached-iframe"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[Audit report]
|
||||
expected: NOTRUN
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[startrendering-after-discard.html]
|
||||
expected: TIMEOUT
|
||||
[startRendering()]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
[017.html]
|
||||
expected: TIMEOUT
|
||||
[origin of the script that invoked the method, about:blank]
|
||||
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
|
||||
|
|
@ -462,6 +462,13 @@
|
|||
]
|
||||
],
|
||||
"crashtests": {
|
||||
"line-break-float-crash.html": [
|
||||
"bdf47c3e8ae024e596629dc4061cc7e075503150",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"trailing-space-with-cr-crash.html": [
|
||||
"48c223e352d378e10b7cc10e5e49e8613e43c380",
|
||||
[
|
||||
|
@ -25189,6 +25196,21 @@
|
|||
]
|
||||
}
|
||||
},
|
||||
"selection": {
|
||||
"selection-shadow-dom-crash-print.html": [
|
||||
"cf62609173953e30ccce13fd52459c0e48147c63",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/reference/blank.html",
|
||||
"!="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
]
|
||||
},
|
||||
"svg": {
|
||||
"painting": {
|
||||
"reftests": {
|
||||
|
@ -142159,19 +142181,6 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"flexbox_justifycontent-center-overflow.html": [
|
||||
"6f4d2baaeeaaa4af6b26efb1b6c0cfd2d8c5d14d",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-flexbox/flexbox_justifycontent-center-overflow-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"flexbox_justifycontent-center.html": [
|
||||
"e26d69204093b31c4fe274957db4873f4b15fd5a",
|
||||
[
|
||||
|
@ -168078,8 +168087,34 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"first-line-with-out-of-flow-and-nested-div.html": [
|
||||
"e277e9ce1cb69bcc1c7a61c8a100585e077bd359",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-pseudo/first-line-with-out-of-flow-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"first-line-with-out-of-flow-and-nested-span.html": [
|
||||
"c0fe55cbc5292fa24e745760ea0c70a4bd15547f",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-pseudo/first-line-with-out-of-flow-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"first-line-with-out-of-flow.html": [
|
||||
"798ecf8264e2ddb38257c6cb1174bcc069c6e6d1",
|
||||
"76d50254506086bfd3364b4ebcab3384e4d6e4a6",
|
||||
[
|
||||
null,
|
||||
[
|
||||
|
@ -221784,6 +221819,19 @@
|
|||
]
|
||||
]
|
||||
},
|
||||
"is-default-ns-003.html": [
|
||||
"410d1221ec0f0a8baf4f29f9d1ff1e34e26cd854",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/reference/blank.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"is-where-pseudo-elements.html": [
|
||||
"428b3b9a2d8747674b66aacffff17c730097d135",
|
||||
[
|
||||
|
@ -248365,19 +248413,6 @@
|
|||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"padding-border-margin-002.html": [
|
||||
"1ccfbb7005faeaeb66e584df2b9458cf2c30e805",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/mathml/relations/css-styling/padding-border-margin/padding-border-margin-002-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
]
|
||||
},
|
||||
"presentational-hints-001.html": [
|
||||
|
@ -301957,10 +301992,6 @@
|
|||
"3f3ba32e629d5e15227a35329b7ac254f53df5c3",
|
||||
[]
|
||||
],
|
||||
"flexbox_justifycontent-center-overflow-ref.html": [
|
||||
"f6443f6a78adc038a427d9eeaf1265fd77e09a26",
|
||||
[]
|
||||
],
|
||||
"flexbox_justifycontent-center-ref.html": [
|
||||
"1ca43d8464e81cd0b0ac248e526ea5f28de0890e",
|
||||
[]
|
||||
|
@ -348995,7 +349026,7 @@
|
|||
[]
|
||||
],
|
||||
"webhid.idl": [
|
||||
"38d917e1ec03512c4ac933be1ca7aa35be1074e8",
|
||||
"ad2f0b78653be7c583216c782f1a4125275b964c",
|
||||
[]
|
||||
],
|
||||
"webmidi.idl": [
|
||||
|
@ -349812,10 +349843,6 @@
|
|||
"padding-border-margin-001-ref.html": [
|
||||
"150a650bc28434f1811d3d40747d074146ec4a30",
|
||||
[]
|
||||
],
|
||||
"padding-border-margin-002-ref.html": [
|
||||
"e13a9f47ff4f68fd1486123735111079989165cf",
|
||||
[]
|
||||
]
|
||||
},
|
||||
"presentational-hints-001-ref.html": [
|
||||
|
@ -360186,7 +360213,7 @@
|
|||
[]
|
||||
],
|
||||
"vcs.py": [
|
||||
"3dfd7c980d70594ff5d8ef48d034ae696521fbdd",
|
||||
"344575276b42cb33ebb1d81f5e1a21eac39db2e6",
|
||||
[]
|
||||
]
|
||||
},
|
||||
|
@ -401673,6 +401700,13 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"flexbox_justifycontent-center-overflow.html": [
|
||||
"5bedb824b673faca5d38ae50755ae009adcee4e3",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"flexbox_width-change-and-relayout-children.html": [
|
||||
"06342679b62777213483442128b6429290f091d1",
|
||||
[
|
||||
|
@ -448752,7 +448786,7 @@
|
|||
]
|
||||
],
|
||||
"location_reload.html": [
|
||||
"eb2c21b38a307b6ac015f018a8192384455ac9fb",
|
||||
"0a2d21d8d22ae3d84df94f4483aa698b8d1a73b0",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
|
@ -487855,6 +487889,31 @@
|
|||
}
|
||||
]
|
||||
],
|
||||
"finalizationregistry-cleanupCallback-gets-a-microtask.optional.any.js": [
|
||||
"6365ea7d2321d9f03870393b6c9d8a948256b5fc",
|
||||
[
|
||||
"js/builtins/weakrefs/finalizationregistry-cleanupCallback-gets-a-microtask.optional.any.html",
|
||||
{
|
||||
"script_metadata": [
|
||||
[
|
||||
"script",
|
||||
"resources/maybe-garbage-collect.js"
|
||||
]
|
||||
]
|
||||
}
|
||||
],
|
||||
[
|
||||
"js/builtins/weakrefs/finalizationregistry-cleanupCallback-gets-a-microtask.optional.any.worker.html",
|
||||
{
|
||||
"script_metadata": [
|
||||
[
|
||||
"script",
|
||||
"resources/maybe-garbage-collect.js"
|
||||
]
|
||||
]
|
||||
}
|
||||
]
|
||||
],
|
||||
"gc-has-one-chance-to-call-cleanupCallback-queueMicrotask.optional.any.js": [
|
||||
"c9a7e9bc55e7909d4b7a7606dd12d98c03a9f2d2",
|
||||
[
|
||||
|
@ -489115,13 +489174,6 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"largeop-hit-testing.html": [
|
||||
"4f6a7782f2797294b6f4ea3739df399312838101",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"mo-axis-height-1.html": [
|
||||
"3b28d976f0cf999fe4fd1f684696823eaff47749",
|
||||
[
|
||||
|
@ -513604,6 +513656,26 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"anonymous": {
|
||||
"details-ancestor.html": [
|
||||
"b0adfa68907044124e626d2871297b65eac4d35a",
|
||||
[
|
||||
null,
|
||||
{
|
||||
"testdriver": true
|
||||
}
|
||||
]
|
||||
],
|
||||
"details-mutate.html": [
|
||||
"3cd547511251ec80d82656a962b1ec3271423f9f",
|
||||
[
|
||||
null,
|
||||
{
|
||||
"testdriver": true
|
||||
}
|
||||
]
|
||||
]
|
||||
},
|
||||
"bidi": {
|
||||
"modify.tentative.html": [
|
||||
"6029cf423a120c41fc6e4aa45bca728989bb8a02",
|
||||
|
@ -513780,15 +513852,6 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"select-internal.html": [
|
||||
"305e26d4057c066758dc587d7180b809ed9c9da7",
|
||||
[
|
||||
null,
|
||||
{
|
||||
"testdriver": true
|
||||
}
|
||||
]
|
||||
],
|
||||
"selectAllChildren.html": [
|
||||
"9a472a4b2fe5ef4b0e5283e3d957ceefef387ff1",
|
||||
[
|
||||
|
@ -534922,8 +534985,8 @@
|
|||
]
|
||||
},
|
||||
"the-audiocontext-interface": {
|
||||
"audiocontext-detached-execution-context.tentative.html": [
|
||||
"22a98e291ae4b51ec93046d4058a68aa3aff4a12",
|
||||
"audiocontext-detached-execution-context.html": [
|
||||
"a83fa1dbe676852cb8a0a3a06feaa3d6b5f5db69",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
|
@ -534973,6 +535036,13 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"promise-methods-after-discard.html": [
|
||||
"2fb3c5a50bbad8d061e2e896ac6b3ab9f0bda849",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"suspend-after-construct.html": [
|
||||
"596a825c3db8b02e645cb1098222e89e737e12cb",
|
||||
[
|
||||
|
@ -536043,8 +536113,15 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"offlineaudiocontext-detached-execution-context.tentative.html": [
|
||||
"66d62cf6aa4e210b6fa2228b2ddfcd9724241d5b",
|
||||
"offlineaudiocontext-detached-execution-context.html": [
|
||||
"6eafd15fd243d3004ca887c61755c97d85f9f025",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"startrendering-after-discard.html": [
|
||||
"dd610ec3352673d75f4b285bcfab92647487236c",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
|
@ -538595,6 +538672,13 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"unknown-mediatypes.html": [
|
||||
"f5176d1c87b6a2a14281c603f4a491efd86c826d",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"video-codecs.https.html": [
|
||||
"4ce0618bca3007e4193b98a95b0a6d030cc24b5f",
|
||||
[
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[hit-test-floats-004.html]
|
||||
[Miss float below something else]
|
||||
expected: FAIL
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
[flexbox_justifycontent-center-overflow.html]
|
||||
type: reftest
|
||||
expected: FAIL
|
|
@ -21,3 +21,6 @@
|
|||
[test the top of layer]
|
||||
expected: FAIL
|
||||
|
||||
[test some point of the element: top left corner]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[elementsFromPoint-invalid-cases.html]
|
||||
[The root element is the last element returned for otherwise empty queries within the viewport]
|
||||
expected: FAIL
|
||||
|
|
@ -312,24 +312,24 @@
|
|||
[fetch(): separate response Content-Type: text/plain ]
|
||||
expected: NOTRUN
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;charset=gbk text/plain text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -53,3 +53,12 @@
|
|||
[combined text/javascript ]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;charset=windows-1252 error text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript x/x]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -11,3 +11,6 @@
|
|||
[X-Content-Type-Options%3A%20nosniff%2C%2C%40%23%24%23%25%25%26%5E%26%5E*()()11!]
|
||||
expected: FAIL
|
||||
|
||||
[X-Content-Type-Options%3A%20%2Cnosniff]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[traverse_the_history_5.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[cross-origin-objects-on-new-window.html]
|
||||
expected: TIMEOUT
|
|
@ -1,4 +1,5 @@
|
|||
[embedded-opener-remove-frame.html]
|
||||
expected: CRASH
|
||||
[opener and "removed" embedded documents]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -172,6 +172,3 @@
|
|||
[XHTML img usemap="http://example.org/#garbage-before-hash-id"]
|
||||
expected: FAIL
|
||||
|
||||
[HTML (standards) IMG usemap="no-hash-name"]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[iframe_sandbox_popups_escaping-2.html]
|
||||
expected: TIMEOUT
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
[iframe_sandbox_popups_escaping-3.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe escape the sandbox if\n allow-popups-to-escape-sandbox is used]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[iframe_sandbox_popups_nonescaping-2.html]
|
||||
type: testharness
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[form-double-submit-2.html]
|
||||
[preventDefault should allow onclick submit() to succeed]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[script-onerror-insertion-point-2.html]
|
||||
expected: TIMEOUT
|
|
@ -1,4 +0,0 @@
|
|||
[module-delayed.html]
|
||||
[async document.write in a module]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[module-static-import-delayed.html]
|
||||
[document.write in an imported module]
|
||||
expected: FAIL
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
[ignore-opens-during-unload.window.html]
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[ignore-opens-during-unload]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[promise-job-entry.html]
|
||||
expected: TIMEOUT
|
||||
[Fulfillment handler on fulfilled promise]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -16,5 +15,5 @@
|
|||
expected: FAIL
|
||||
|
||||
[Fulfillment handler on pending-then-fulfilled promise]
|
||||
expected: TIMEOUT
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
[finalizationregistry-cleanupCallback-gets-a-microtask.optional.any.worker.html]
|
||||
expected: ERROR
|
||||
|
||||
[finalizationregistry-cleanupCallback-gets-a-microtask.optional.any.html]
|
||||
expected: ERROR
|
|
@ -410,3 +410,6 @@
|
|||
[X Stitched sine-wave buffers at sample rate 43800 does not equal [0,0.06264832615852356,0.12505052983760834,0.18696144223213196,0.24813786149024963,0.308339387178421,0.36732959747314453,0.4248766601085663,0.480754554271698,0.5347436666488647,0.5866320133209229,0.6362156271934509,0.6832997798919678,0.7276994585990906,0.7692402601242065,0.8077589869499207...\] with an element-wise tolerance of {"absoluteThreshold":0.0038986,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[28696\]\t-9.0234480000000000e+6\t9.3139332532882690e-1\t9.0234489313933253e+6\t9.6881185273768324e+6\t3.8985999999999999e-3\n\t[28697\]\t7.0477002859115601e-1\t9.0675884485244751e-1\t2.0198881626129150e-1\t2.2275913536212616e-1\t3.8985999999999999e-3\n\tMax AbsError of 9.0234489313933253e+6 at index of 28696.\n\tMax RelError of 9.6881185273768324e+6 at index of 28696.\n]
|
||||
expected: FAIL
|
||||
|
||||
[X Stitched sine-wave buffers at sample rate 43800 does not equal [0,0.06264832615852356,0.12505052983760834,0.18696144223213196,0.24813786149024963,0.308339387178421,0.36732959747314453,0.4248766601085663,0.480754554271698,0.5347436666488647,0.5866320133209229,0.6362156271934509,0.6832997798919678,0.7276994585990906,0.7692402601242065,0.8077589869499207...\] with an element-wise tolerance of {"absoluteThreshold":0.0038986,"relativeThreshold":0}.\n\tIndex\tActual\t\t\tExpected\t\tAbsError\t\tRelError\t\tTest threshold\n\t[28696\]\t-2.6526414170903011e-32\t9.3139332532882690e-1\t9.3139332532882690e-1\t1.0000000000000000e+0\t3.8985999999999999e-3\n\t[28697\]\t7.0477002859115601e-1\t9.0675884485244751e-1\t2.0198881626129150e-1\t2.2275913536212616e-1\t3.8985999999999999e-3\n\tMax AbsError of 9.3139332532882690e-1 at index of 28696.\n\tMax RelError of 1.0000000000000000e+0 at index of 28696.\n]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
[audiocontext-detached-execution-context.html]
|
||||
expected: TIMEOUT
|
||||
[Executing "decoding-on-detached-iframe"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[Audit report]
|
||||
expected: NOTRUN
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
[promise-methods-after-discard.html]
|
||||
expected: TIMEOUT
|
||||
[resume()]
|
||||
expected: TIMEOUT
|
||||
|
||||
[close()]
|
||||
expected: NOTRUN
|
||||
|
||||
[suspend()]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
[offlineaudiocontext-detached-execution-context.html]
|
||||
expected: TIMEOUT
|
||||
[Executing "decoding-on-detached-iframe"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[Audit report]
|
||||
expected: NOTRUN
|
||||
|
|
@ -0,0 +1,5 @@
|
|||
[startrendering-after-discard.html]
|
||||
expected: TIMEOUT
|
||||
[startRendering()]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
[017.html]
|
||||
expected: TIMEOUT
|
||||
[origin of the script that invoked the method, about:blank]
|
||||
expected: TIMEOUT
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<title>flexbox | justify-content: center / overflow</title>
|
||||
<link rel="author" href="http://opera.com" title="Opera Software">
|
||||
<style>
|
||||
div {
|
||||
font-family: monospace;
|
||||
background: blue;
|
||||
margin: 1em 0 0 10em;
|
||||
border: 1px solid black;
|
||||
height: 8em;
|
||||
width: 4em;
|
||||
position: relative;
|
||||
}
|
||||
span {
|
||||
background: yellow;
|
||||
margin: 1em 0 0 -2.85em;
|
||||
height: 6em;
|
||||
display: inline-block;
|
||||
}
|
||||
span:nth-child(2) {
|
||||
background: pink;
|
||||
margin-left: 2em;
|
||||
}
|
||||
span:nth-child(3) {
|
||||
background: lightblue;
|
||||
margin-left: 0;
|
||||
position: relative;
|
||||
top: -7em;
|
||||
left: 4.95em
|
||||
}
|
||||
</style>
|
||||
|
||||
<div>
|
||||
<span>dam</span><span>dam</span><span>dam</span>
|
||||
</div>
|
|
@ -1,36 +1,40 @@
|
|||
<!DOCTYPE html>
|
||||
<title>flexbox | justify-content: center / overflow</title>
|
||||
<link rel="author" href="http://opera.com" title="Opera Software">
|
||||
<link rel="author" href="mailto:dgrogan@chromium.org" title="David Grogan">
|
||||
<link rel="help"
|
||||
href="http://www.w3.org/TR/css-flexbox-1/#justify-content-property">
|
||||
<link rel="match" href="flexbox_justifycontent-center-overflow-ref.html">
|
||||
<style>
|
||||
div {
|
||||
font-family: monospace;
|
||||
background: blue;
|
||||
padding: 0;
|
||||
margin: 1em 0 0 10em;
|
||||
border: 1px solid black;
|
||||
height: 8em;
|
||||
width: 4em;
|
||||
<meta name="assert" content="Items that overflow a singleline justify-content:center flexbox container are positioned correctly.">
|
||||
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/resources/check-layout-th.js"></script>
|
||||
|
||||
Blue is the flexbox. Orange are items that overflow it.
|
||||
|
||||
<style>
|
||||
.flexbox {
|
||||
background: blue;
|
||||
margin-left: 50px;
|
||||
height: 150px;
|
||||
width: 50px;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
position: relative;
|
||||
}
|
||||
span {
|
||||
background: white;
|
||||
margin: 1em;
|
||||
width: 5em;
|
||||
max-width: 6em;
|
||||
display: inline-block;
|
||||
|
||||
flex: 1 0 0%;
|
||||
background: orange;
|
||||
margin: 10px;
|
||||
flex: 1 0 40px;
|
||||
}
|
||||
span:nth-child(1) {background: yellow;}
|
||||
span:nth-child(2) {background: pink;}
|
||||
span:nth-child(3) {background: lightblue;}
|
||||
</style>
|
||||
|
||||
<div>
|
||||
<span>dam</span><span>dam</span><span>dam</span>
|
||||
<div class=flexbox>
|
||||
<span data-expected-width=40 data-offset-x=-55></span>
|
||||
<span data-expected-width=40 data-offset-x=5></span>
|
||||
<span data-expected-width=40 data-offset-x=65></span>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
checkLayout('span');
|
||||
</script>
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#first-line-pseudo">
|
||||
<link rel="match" href="first-line-with-out-of-flow-ref.html">
|
||||
<title>CSS Test: ::first-line with out of flow and nested div</title>
|
||||
<style>
|
||||
#block::first-line { color: green; }
|
||||
</style>
|
||||
<div id="block">
|
||||
<div style="position: absolute"><br></div>
|
||||
<div style="float: right"><br></div>
|
||||
<div>
|
||||
<div style="position: absolute"><br></div>
|
||||
<div style="float: right"><br></div>
|
||||
<div style="color: blue">
|
||||
<div>
|
||||
<div style="position: absolute"></div><span>This text <div style="position: absolute"></div></span><span>should be green.</span><br>
|
||||
This text should be blue.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#first-line-pseudo">
|
||||
<link rel="match" href="first-line-with-out-of-flow-ref.html">
|
||||
<title>CSS Test: ::first-line with out of flow and nested span</title>
|
||||
<style>
|
||||
#block::first-line { color: green; }
|
||||
</style>
|
||||
<div id="block">
|
||||
<div style="position: absolute"><br></div>
|
||||
<div style="float: right"><br></div>
|
||||
<div>
|
||||
<div style="position: absolute"><br></div>
|
||||
<div style="float: right"><br></div>
|
||||
<div style="color: blue">
|
||||
<div>
|
||||
<span style="position: absolute"></span><span>This text </span><span style="position: absolute"></span><span>should be green.</span><br>
|
||||
This text should be blue.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
|
@ -1,6 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-pseudo-4/#first-line-pseudo">
|
||||
<link rel="match" href="first-line-with-out-of-flow-ref.html">
|
||||
<title>CSS Test: ::first-line with out of flow</title>
|
||||
<style>
|
||||
#block::first-line { color: green; }
|
||||
</style>
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
<!DOCTYPE html>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-text-3">
|
||||
<link rel="author" title="Koji Ishii" href="mailto:kojii@chromium.org">
|
||||
<style>
|
||||
#container {
|
||||
font-size: 100px;
|
||||
width: 33554432px;
|
||||
}
|
||||
atomic {
|
||||
display: inline-block;
|
||||
width: 1ch;
|
||||
}
|
||||
left {
|
||||
float: left;
|
||||
width: 33554432px;
|
||||
height: 10px;
|
||||
}
|
||||
</style>
|
||||
<body>
|
||||
<div id="container">
|
||||
<atomic></atomic>
|
||||
0
|
||||
<left></left>
|
||||
<span dir="ltr"><atomic></atomic></span>
|
||||
</div>
|
||||
</body>
|
|
@ -0,0 +1,29 @@
|
|||
<!DOCTYPE html>
|
||||
<title>Default namespace respected inside :is() for non-subject compounds</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/selectors-4/#matches">
|
||||
<link rel="match" href="/css/reference/blank.html">
|
||||
<!--
|
||||
Default namespace declarations do not affect the compound selector
|
||||
representing the *subject* of any selector within a :is() pseudo-class, unless
|
||||
that compound selector contains an explicit universal selector or type
|
||||
selector.
|
||||
-->
|
||||
<style>
|
||||
@namespace "http://www.w3.org/1999/xhtml";
|
||||
|
||||
*|*.a {
|
||||
display:none;
|
||||
}
|
||||
|
||||
/* This should not apply, since the '.container' compound is affected by the
|
||||
default namespace (even though the '.a' compound is not). */
|
||||
*|*:is(.container .a) {
|
||||
display:initial;
|
||||
}
|
||||
|
||||
</style>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="200" height="100">
|
||||
<g class=container>
|
||||
<text class="a" y="1em">FAIL if this text is visible</text>
|
||||
</g>
|
||||
</svg>
|
|
@ -5,7 +5,7 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<body onload="startTest();">
|
||||
<div id="log"></div>
|
||||
|
||||
<iframe></iframe>
|
||||
|
@ -29,11 +29,14 @@
|
|||
t.done();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
function startTest() {
|
||||
var url = new URL("./location_reload-iframe.html", window.location).href;
|
||||
var iframe = document.querySelector("iframe");
|
||||
iframe.src = url;
|
||||
history_length = history.length;
|
||||
});
|
||||
}
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
|
|
@ -63,60 +63,43 @@ enum HIDUnitSystem {
|
|||
"english-rotation", "vendor-defined", "reserved"
|
||||
};
|
||||
|
||||
[
|
||||
Exposed=Window,
|
||||
SecureContext
|
||||
] interface HIDReportItem {
|
||||
readonly attribute boolean isAbsolute;
|
||||
readonly attribute boolean isArray;
|
||||
readonly attribute boolean isRange;
|
||||
readonly attribute boolean hasNull;
|
||||
readonly attribute FrozenArray<unsigned long> usages;
|
||||
readonly attribute unsigned long usageMinimum;
|
||||
readonly attribute unsigned long usageMaximum;
|
||||
readonly attribute unsigned long designatorMinimum;
|
||||
readonly attribute unsigned long designatorMaximum;
|
||||
readonly attribute unsigned long stringMinimum;
|
||||
readonly attribute unsigned long stringMaximum;
|
||||
readonly attribute unsigned short reportSize;
|
||||
readonly attribute unsigned short reportCount;
|
||||
readonly attribute byte unitExponent;
|
||||
readonly attribute unsigned long unit;
|
||||
readonly attribute long logicalMinimum;
|
||||
readonly attribute long logicalMaximum;
|
||||
readonly attribute long physicalMinimum;
|
||||
readonly attribute long physicalMaximum;
|
||||
dictionary HIDReportItem {
|
||||
boolean isAbsolute;
|
||||
boolean isArray;
|
||||
boolean isRange;
|
||||
boolean hasNull;
|
||||
sequence<unsigned long> usages;
|
||||
unsigned long usageMinimum;
|
||||
unsigned long usageMaximum;
|
||||
unsigned short reportSize;
|
||||
unsigned short reportCount;
|
||||
byte unitExponent;
|
||||
HIDUnitSystem unitSystem;
|
||||
byte unitFactorLengthExponent;
|
||||
byte unitFactorMassExponent;
|
||||
byte unitFactorTimeExponent;
|
||||
byte unitFactorTemperatureExponent;
|
||||
byte unitFactorCurrentExponent;
|
||||
byte unitFactorLuminousIntensityExponent;
|
||||
long logicalMinimum;
|
||||
long logicalMaximum;
|
||||
long physicalMinimum;
|
||||
long physicalMaximum;
|
||||
sequence<DOMString> strings;
|
||||
};
|
||||
|
||||
[
|
||||
Exposed=Window,
|
||||
SecureContext
|
||||
] interface HIDReportInfo {
|
||||
readonly attribute octet reportId;
|
||||
readonly attribute FrozenArray<HIDReportItem> items;
|
||||
dictionary HIDReportInfo {
|
||||
octet reportId;
|
||||
sequence<HIDReportItem> items;
|
||||
};
|
||||
|
||||
dictionary HIDFieldOptions {
|
||||
required octet reportId;
|
||||
required unsigned long fieldIndex;
|
||||
boolean isFeatureReport;
|
||||
};
|
||||
|
||||
[
|
||||
Exposed=Window,
|
||||
SecureContext
|
||||
] interface HIDCollectionInfo {
|
||||
readonly attribute unsigned short usagePage;
|
||||
readonly attribute unsigned short usage;
|
||||
readonly attribute FrozenArray<HIDCollectionInfo> children;
|
||||
readonly attribute FrozenArray<HIDReportInfo> inputReports;
|
||||
readonly attribute FrozenArray<HIDReportInfo> outputReports;
|
||||
readonly attribute FrozenArray<HIDReportInfo> featureReports;
|
||||
readonly attribute FrozenArray<octet> reportIds;
|
||||
|
||||
double getField(BufferSource reportData, HIDFieldOptions options);
|
||||
void setField(BufferSource reportData, HIDFieldOptions options,
|
||||
double value);
|
||||
dictionary HIDCollectionInfo {
|
||||
unsigned short usagePage;
|
||||
unsigned short usage;
|
||||
sequence<HIDCollectionInfo> children;
|
||||
sequence<HIDReportInfo> inputReports;
|
||||
sequence<HIDReportInfo> outputReports;
|
||||
sequence<HIDReportInfo> featureReports;
|
||||
};
|
||||
|
||||
[
|
||||
|
@ -129,9 +112,9 @@ dictionary HIDFieldOptions {
|
|||
readonly attribute unsigned short productId;
|
||||
readonly attribute DOMString productName;
|
||||
readonly attribute FrozenArray<HIDCollectionInfo> collections;
|
||||
Promise<void> open();
|
||||
Promise<void> close();
|
||||
Promise<void> sendReport([EnforceRange] octet reportId, BufferSource data);
|
||||
Promise<void> sendFeatureReport([EnforceRange] octet reportId, BufferSource data);
|
||||
Promise<undefined> open();
|
||||
Promise<undefined> close();
|
||||
Promise<undefined> sendReport([EnforceRange] octet reportId, BufferSource data);
|
||||
Promise<undefined> sendFeatureReport([EnforceRange] octet reportId, BufferSource data);
|
||||
Promise<DataView> receiveFeatureReport([EnforceRange] octet reportId);
|
||||
};
|
||||
|
|
|
@ -0,0 +1,60 @@
|
|||
// META: script=resources/maybe-garbage-collect.js
|
||||
// ├──> maybeGarbageCollectAsync
|
||||
// └──> resolveGarbageCollection
|
||||
/*---
|
||||
esid: sec-finalization-registry-target
|
||||
info: |
|
||||
FinalizationRegistry ( cleanupCallback )
|
||||
|
||||
Execution
|
||||
At any time, if a set of objects S is not live, an ECMAScript implementation may perform the
|
||||
following steps atomically:
|
||||
|
||||
For each obj of S, do
|
||||
For each WeakRef ref such that ref.[[WeakRefTarget]] is obj, do
|
||||
Set ref.[[WeakRefTarget]] to empty.
|
||||
For each FinalizationRegistry fg such that fg.[[Cells]] contains cell, such that
|
||||
cell.[[WeakRefTarget]] is obj,
|
||||
Set cell.[[WeakRefTarget]] to empty.
|
||||
Optionally, perform ! HostCleanupFinalizationRegistry(fg).
|
||||
|
||||
HostCleanupFinalizationRegistry(finalizationRegistry)
|
||||
|
||||
HostCleanupFinalizationRegistry is an implementation-defined abstract operation that is expected
|
||||
to call CleanupFinalizationRegistry(finalizationRegistry) at some point in the future, if
|
||||
possible. The host's responsibility is to make this call at a time which does not interrupt
|
||||
synchronous ECMAScript code execution.
|
||||
---*/
|
||||
|
||||
let count = 1_000;
|
||||
let calls = 0;
|
||||
let registries = [];
|
||||
let callback = function() {
|
||||
calls++;
|
||||
};
|
||||
for (let i = 0; i < count; i++) {
|
||||
registries.push(
|
||||
new FinalizationRegistry(callback)
|
||||
);
|
||||
}
|
||||
setup({ allow_uncaught_exception: true });
|
||||
|
||||
promise_test((test) => {
|
||||
assert_implements(
|
||||
typeof FinalizationRegistry.prototype.register === 'function',
|
||||
'FinalizationRegistry.prototype.register is not implemented.'
|
||||
);
|
||||
return (async () => {
|
||||
|
||||
{
|
||||
let target = {};
|
||||
for (let registry of registries) {
|
||||
registry.register(target, 1);
|
||||
}
|
||||
target = null;
|
||||
}
|
||||
|
||||
await maybeGarbageCollectAsync();
|
||||
await test.step_wait(() => calls === count, `Expected ${count} registry cleanups.`);
|
||||
})().catch(resolveGarbageCollection);
|
||||
}, 'HostCleanupFinalizationRegistry is an implementation-defined abstract operation that is expected to call CleanupFinalizationRegistry(finalizationRegistry) at some point in the future, if possible.');
|
|
@ -1,63 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<title>Test hit testing on large operators</title>
|
||||
<meta name="assert" content="Verify that hit testing works on large operators.">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/mathml/support/feature-detection.js"></script>
|
||||
<style>
|
||||
@font-face {
|
||||
font-family: TestFont;
|
||||
src: url("/fonts/math/largeop-displayoperatorminheight5000.woff");
|
||||
}
|
||||
mo {
|
||||
font-family: TestFont;
|
||||
font-size: 16px;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
function getBox(aId) {
|
||||
return document.getElementById(aId).getBoundingClientRect();
|
||||
}
|
||||
|
||||
setup({ explicit_done: true });
|
||||
window.addEventListener("load", () => { document.fonts.ready.then(runTests); });
|
||||
|
||||
function runTests() {
|
||||
|
||||
test(function() {
|
||||
assert_true(MathMLFeatureDetection.has_operator_spacing());
|
||||
|
||||
let bbox = getBox("largeop");
|
||||
let hit = document.getElementById("largeop");
|
||||
let reference = getBox("reference");
|
||||
assert_true(bbox.height > reference.height, "height of large op is bigger than the equivalent normal operator");
|
||||
assert_equals(hit, document.elementFromPoint(bbox.left + 1, bbox.top + 1), "hit testing top-left corner of large op works");
|
||||
assert_equals(hit, document.elementFromPoint(bbox.right - 1, bbox.bottom - 1), "hit testing bottom-right corner of large op works");
|
||||
}, "Large op hit testing");
|
||||
|
||||
done();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<math>
|
||||
<mtable>
|
||||
<mtr>
|
||||
<mtd>
|
||||
<mstyle displaystyle="false">
|
||||
<mo id="reference">⫿</mo>
|
||||
</mstyle>
|
||||
</mtd>
|
||||
<mtd>
|
||||
<mstyle displaystyle="true">
|
||||
<mo id="largeop">⫿</mo>
|
||||
</mstyle>
|
||||
</mtd>
|
||||
</mtr>
|
||||
</mtable>
|
||||
</math>
|
||||
</body>
|
||||
</html>
|
|
@ -1,18 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>Padding/border/margin on largeop (reference)</title>
|
||||
<body>
|
||||
<p>This test passes if you see a cyan rectangle of width 300px and
|
||||
height 1500px, surrounded by a 10px blue padding, surrounded by a 10px
|
||||
blue/yellow dashed border, itself
|
||||
surrounded by a 10px pink margin.</p>
|
||||
</div>
|
||||
<div style="background: pink; position: absolute; left: 10px; top: 4em;">
|
||||
<div style="background: blue; border: 10px dashed yellow; padding: 10px; margin: 10px;">
|
||||
<div style="width: 300px; height: 1500px; background: cyan;"></div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,34 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<title>Padding/border/margin on largeop</title>
|
||||
<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#layout-algorithms">
|
||||
<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#the-math-style-property">
|
||||
<link rel="help" href="https://mathml-refresh.github.io/mathml-core/#layout-of-operators">
|
||||
<link rel="match" href="padding-border-margin-002-ref.html"/>
|
||||
<meta name="assert" content="Verify visual rendering of padding/border/margin on a displaystyle mo element with the largeop property.">
|
||||
<style>
|
||||
@font-face {
|
||||
font-family: TestFont;
|
||||
src: url("/fonts/math/largeop-displayoperatorminheight5000.woff");
|
||||
}
|
||||
math {
|
||||
/* Largeop variant for U+2AFF has width 100px
|
||||
and height 300 * 5000 / 1000 = 1500px */
|
||||
font-family: TestFont;
|
||||
font-size: 300px;
|
||||
}
|
||||
</style>
|
||||
<body>
|
||||
<p>This test passes if you see a cyan rectangle of width 300px and
|
||||
height 1500px, surrounded by a 10px blue padding, surrounded by a 10px
|
||||
blue/yellow dashed border, itself
|
||||
surrounded by a 10px pink margin.</p>
|
||||
<div style="background: pink; position: absolute; left: 10px; top: 4em;">
|
||||
<math displaystyle="true">
|
||||
<mo largeop="true" lspace="0" rspace="0" style="background: blue; border: 10px dashed yellow; padding: 10px; margin: 10px; color: cyan;">⫿</mo>
|
||||
</math>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -22,6 +22,12 @@ promise_test(async () => {
|
|||
.pointerUp()
|
||||
.send();
|
||||
const selection = getSelection();
|
||||
|
||||
if (selection.anchorNode === null) {
|
||||
// <details> is not selectable, which is acceptable
|
||||
return;
|
||||
}
|
||||
|
||||
// Gecko throws when accessing any property from DOM-invisible node
|
||||
// so check we can access something
|
||||
assert_equals(selection.anchorNode.constructor.name, "HTMLDetailsElement");
|
|
@ -0,0 +1,38 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>Test selecting anonymous summary element inside details</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="/resources/testdriver.js"></script>
|
||||
<script src="/resources/testdriver-actions.js"></script>
|
||||
<script src="/resources/testdriver-vendor.js"></script>
|
||||
<link rel="stylesheet" href="/fonts/ahem.css">
|
||||
<style>
|
||||
details {
|
||||
font: 16px/1 Ahem;
|
||||
}
|
||||
</style>
|
||||
<details id="d"></details>
|
||||
<script>
|
||||
const selection = getSelection();
|
||||
d.addEventListener("DOMSubtreeModified", ev => {
|
||||
window.find("cthulu", true, false);
|
||||
selection.extend(document.body, document.body.childNodes.length);
|
||||
});
|
||||
|
||||
window.onload = () => {
|
||||
promise_test(async () => {
|
||||
// This enables `.extend()`
|
||||
selection.collapse(document.body);
|
||||
// Clicking implicitly selects an anonymous summary element inside <details>
|
||||
await new test_driver.Actions()
|
||||
.pointerMove(0, 0, { origin: d })
|
||||
.pointerDown()
|
||||
.pointerUp()
|
||||
.send();
|
||||
// FIXME: Convert this to a crash test. Currently test_driver actions
|
||||
// do not work within crash tests.
|
||||
assert_true(true, "No crash");
|
||||
}, "Manipulating selection after clicking <details> shouldn't cause a crash");
|
||||
};
|
||||
</script>
|
|
@ -0,0 +1,18 @@
|
|||
<!doctype html>
|
||||
<title>Printing with odd selections doesn't crash</title>
|
||||
<!-- Really a crashtest but since we can't really have print crashtests, we assert that we print something -->
|
||||
<link rel="mismatch" href="/css/reference/blank.html">
|
||||
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1672856">
|
||||
<script>
|
||||
function go() {
|
||||
var x = document.getSelection()
|
||||
x.extend(b)
|
||||
x.modify("move", "left", "word")
|
||||
a.remove()
|
||||
}
|
||||
</script>
|
||||
<body onload=go()>
|
||||
<audio id="a" controls="">
|
||||
<progress contentEditable>
|
||||
</audio>
|
||||
<li id="b">x</li>
|
|
@ -9,10 +9,8 @@ from six.moves.collections_abc import MutableMapping
|
|||
|
||||
from .utils import git
|
||||
|
||||
try:
|
||||
from ..gitignore import gitignore
|
||||
except ValueError:
|
||||
# relative import beyond toplevel throws *ValueError*!
|
||||
# Cannot do `from ..gitignore import gitignore` because
|
||||
# relative import beyond toplevel throws *ImportError*!
|
||||
from gitignore import gitignore # type: ignore
|
||||
|
||||
|
||||
|
|
|
@ -19,12 +19,9 @@
|
|||
let context = new iframe.contentWindow.AudioContext();
|
||||
document.body.removeChild(iframe);
|
||||
|
||||
// TODO(crbug.com/1060315): This assertion needs to be revised when the
|
||||
// spec behavior is clarified for the case of a non-existent
|
||||
// ExecutionContext.
|
||||
should(context.decodeAudioData(new ArrayBuffer(1)),
|
||||
'decodeAudioData() upon a detached iframe')
|
||||
.beRejectedWith('NotAllowedError')
|
||||
.beRejectedWith('InvalidStateError')
|
||||
.then(() => task.done());
|
||||
});
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
<!doctype html>
|
||||
<title>Test for rejected promises from methods on an AudioContext in a
|
||||
discarded browsing context</title>
|
||||
<script src=/resources/testharness.js></script>
|
||||
<script src=/resources/testharnessreport.js></script>
|
||||
<body></body>
|
||||
<script>
|
||||
let context;
|
||||
let childDOMException;
|
||||
setup(() => {
|
||||
const frame = document.createElement('iframe');
|
||||
document.body.appendChild(frame);
|
||||
context = new frame.contentWindow.AudioContext();
|
||||
childDOMException = frame.contentWindow.DOMException;
|
||||
frame.remove();
|
||||
});
|
||||
|
||||
promise_test((t) => promise_rejects_dom(t, 'InvalidStateError',
|
||||
childDOMException, context.suspend()),
|
||||
'suspend()');
|
||||
promise_test((t) => promise_rejects_dom(t, 'InvalidStateError',
|
||||
childDOMException, context.resume()),
|
||||
'resume()');
|
||||
promise_test((t) => promise_rejects_dom(t, 'InvalidStateError',
|
||||
childDOMException, context.close()),
|
||||
'close()');
|
||||
// decodeAudioData() is tested in audiocontext-detached-execution-context.html
|
||||
</script>
|
|
@ -12,7 +12,7 @@
|
|||
<script id="layout-test-code">
|
||||
const audit = Audit.createTaskRunner();
|
||||
|
||||
audit.define('decoding-on-detached-iframe', async (task, should) => {
|
||||
audit.define('decoding-on-detached-iframe', (task, should) => {
|
||||
const iframe =
|
||||
document.createElementNS("http://www.w3.org/1999/xhtml", "iframe");
|
||||
document.body.appendChild(iframe);
|
||||
|
@ -23,13 +23,9 @@
|
|||
|
||||
document.body.removeChild(iframe);
|
||||
|
||||
// TODO(crbug.com/1060315): This assertion needs to be revised when the
|
||||
// spec behavior is clarified for the case of a non-existent
|
||||
// ExecutionContext.
|
||||
should(context.decodeAudioData(new ArrayBuffer(1)),
|
||||
return should(context.decodeAudioData(new ArrayBuffer(1)),
|
||||
'decodeAudioData() upon a detached iframe')
|
||||
.beRejectedWith('NotAllowedError')
|
||||
.then(() => task.done());
|
||||
.beRejectedWith('InvalidStateError');
|
||||
});
|
||||
|
||||
audit.run();
|
|
@ -0,0 +1,24 @@
|
|||
<!doctype html>
|
||||
<title>Test for rejected promise from startRendering() on an
|
||||
OfflineAudioContext in a discarded browsing context</title>
|
||||
<script src=/resources/testharness.js></script>
|
||||
<script src=/resources/testharnessreport.js></script>
|
||||
<body></body>
|
||||
<script>
|
||||
let context;
|
||||
let childDOMException;
|
||||
setup(() => {
|
||||
const frame = document.createElement('iframe');
|
||||
document.body.appendChild(frame);
|
||||
context = new frame.contentWindow.OfflineAudioContext(
|
||||
{length: 1, sampleRate: 48000});
|
||||
childDOMException = frame.contentWindow.DOMException;
|
||||
frame.remove();
|
||||
});
|
||||
|
||||
promise_test((t) => promise_rejects_dom(
|
||||
t, 'InvalidStateError', childDOMException, context.startRendering()),
|
||||
'startRendering()');
|
||||
// decodeAudioData() is tested in
|
||||
// offlineaudiocontext-detached-execution-context.html
|
||||
</script>
|
|
@ -0,0 +1,34 @@
|
|||
<!doctype html>
|
||||
<meta charset=utf-8>
|
||||
<title>RTCPeerconnection SDP handling of unknown media types</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="../RTCPeerConnection-helper.js"></script>
|
||||
<script>
|
||||
'use strict';
|
||||
|
||||
promise_test(async t => {
|
||||
const pc1 = new RTCPeerConnection();
|
||||
const pc2 = new RTCPeerConnection();
|
||||
t.add_cleanup(() => pc1.close());
|
||||
t.add_cleanup(() => pc2.close());
|
||||
|
||||
const stream = await getNoiseStream({audio: true});
|
||||
pc1.addTrack(stream.getTracks()[0], stream);
|
||||
const offer = await pc1.createOffer();
|
||||
await pc2.setRemoteDescription({
|
||||
type: 'offer',
|
||||
sdp: offer.sdp
|
||||
.replace('m=audio ', 'm=unicorns ')
|
||||
});
|
||||
await pc1.setLocalDescription(offer);
|
||||
const answer = await pc2.createAnswer();
|
||||
await pc2.setLocalDescription(answer);
|
||||
// Do not attempt to call pc1.setRemoteDescription.
|
||||
|
||||
const [preamble, media_section, postamble] = answer.sdp.split('\r\nm=');
|
||||
assert_true(typeof(postamble) === 'undefined');
|
||||
assert_greater_than(media_section.search(
|
||||
/^unicorns 0/), -1);
|
||||
}, 'Unknown media types are rejected with the port set to 0');
|
||||
</script>
|
Loading…
Add table
Add a link
Reference in a new issue