mirror of
https://github.com/servo/servo.git
synced 2025-08-05 13:40:08 +01:00
Update web-platform-tests to revision 593d7eb21e1c3ac161aa51cce914056eb9182962
This commit is contained in:
parent
453aafeea6
commit
bd0b0ea24a
92 changed files with 1060 additions and 159 deletions
|
@ -0,0 +1,4 @@
|
|||
[hit-test-floats-003.html]
|
||||
[Miss float below something else]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[hit-test-floats-005.html]
|
||||
[Miss clipped float]
|
||||
expected: FAIL
|
||||
|
|
@ -5,6 +5,9 @@
|
|||
[[data-expected-height\] 7]
|
||||
expected: FAIL
|
||||
|
||||
[[data-expected-height\] 4]
|
||||
[[data-expected-height\] 1]
|
||||
expected: FAIL
|
||||
|
||||
[[data-expected-height\] 2]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
[appearance-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
|||
[appearance-menulist-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
|||
[webkit-appearance-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
|||
[webkit-appearance-menulist-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -1,4 +0,0 @@
|
|||
[CaretPosition-001.html]
|
||||
[Element at (400, 100)]
|
||||
expected: FAIL
|
||||
|
|
@ -17,3 +17,6 @@
|
|||
[test the top of layer]
|
||||
expected: FAIL
|
||||
|
||||
[test some point of the element: top left corner]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -2,6 +2,3 @@
|
|||
[elementsFromPoint on the root document for points in iframe elements]
|
||||
expected: FAIL
|
||||
|
||||
[elementsFromPoint on inner documents]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -5,3 +5,24 @@
|
|||
[scrollingElement in no-quirks mode]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in quirks mode (body table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode ]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode (root table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode (body table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in quirks mode (root table, body table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in quirks mode (root table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode (root table, body table)]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
[CSS-namespace-object-class-string.html]
|
||||
[Object.prototype.toString applied after deleting @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[@@toStringTag exists on the namespace object with the appropriate descriptor]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied after modifying the namespace object's @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied to the namespace object]
|
||||
expected: FAIL
|
||||
|
|
@ -312,9 +312,6 @@
|
|||
[Response: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||
expected: NOTRUN
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -330,3 +327,15 @@
|
|||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -56,6 +56,3 @@
|
|||
[separate text/javascript x/x]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript error]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
[idlharness-extensions.window.html]
|
||||
[GamepadHapticActuator interface: existence and properties of interface prototype object]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: existence and properties of interface object]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface object name]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface object length]
|
||||
expected: FAIL
|
||||
|
||||
[Gamepad interface: attribute hapticActuators]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: existence and properties of interface prototype object's @@unscopables property]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: attribute type]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: existence and properties of interface prototype object's "constructor" property]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: operation pulse(double, double)]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[traverse_the_history_2.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
[traverse_the_history_2.html]
|
||||
[traverse_the_history_4.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[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,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,5 @@
|
|||
[iframe_sandbox_popups_nonescaping-1.html]
|
||||
expected: TIMEOUT
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -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: FAIL
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[iframe_sandbox_popups_nonescaping-3.html]
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
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,9 +1,10 @@
|
|||
[promise-job-entry.html]
|
||||
expected: TIMEOUT
|
||||
[Fulfillment handler on fulfilled promise]
|
||||
expected: FAIL
|
||||
|
||||
[Rejection handler on pending-then-rejected promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Sanity check: this all works as expected with no promises involved]
|
||||
expected: FAIL
|
||||
|
@ -15,5 +16,5 @@
|
|||
expected: FAIL
|
||||
|
||||
[Fulfillment handler on pending-then-fulfilled promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
[resource_initiator_types.html]
|
||||
expected: TIMEOUT
|
|
@ -0,0 +1,21 @@
|
|||
[namespace-object-class-string.any.html]
|
||||
[Object.prototype.toString applied after deleting @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[@@toStringTag exists on the namespace object with the appropriate descriptor]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied after modifying the namespace object's @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
|
||||
[namespace-object-class-string.any.worker.html]
|
||||
[Object.prototype.toString applied after deleting @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[@@toStringTag exists on the namespace object with the appropriate descriptor]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied after modifying the namespace object's @@toStringTag]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
[realtimeanalyser-fft-scaling.html]
|
||||
expected: TIMEOUT
|
||||
[X 2048-point FFT peak position is not equal to 64. Got 0.]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
[Worker-constructor.html]
|
||||
expected: ERROR
|
|
@ -162075,6 +162075,32 @@
|
|||
]
|
||||
},
|
||||
"css-pseudo": {
|
||||
"active-selection-021.html": [
|
||||
"2061385d6c564c32ff2e36fc096df5b633d7ec2a",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-pseudo/reference/active-selection-021-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"active-selection-024.html": [
|
||||
"5668df550bb0183569d4ed913c6292ea476f77ef",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-pseudo/reference/active-selection-024-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"active-selection-051.html": [
|
||||
"caab01e392428560331729292f99b91bd20ac20e",
|
||||
[
|
||||
|
@ -168383,7 +168409,7 @@
|
|||
]
|
||||
],
|
||||
"range-percent-intrinsic-size-2.html": [
|
||||
"e11e2955891f251409e8519abd48f10fb2dd89e9",
|
||||
"77d02dde130e3e4ce3f0eaf8fa8f1f1d6ac97252",
|
||||
[
|
||||
null,
|
||||
[
|
||||
|
@ -168396,7 +168422,7 @@
|
|||
]
|
||||
],
|
||||
"range-percent-intrinsic-size-2a.html": [
|
||||
"f2c2431978b1596078f48727da0953f23e1f0d3e",
|
||||
"73a9ca49c70d99fe2b45d15645b151104f7cc16a",
|
||||
[
|
||||
null,
|
||||
[
|
||||
|
@ -193801,6 +193827,45 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"appearance-auto-input-non-widget-001.html": [
|
||||
"9e717ab8725d8667d50545f1bad8fe6ea680b9d8",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-ui/appearance-auto-input-non-widget-001-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"appearance-button-001.html": [
|
||||
"33fccb5806541d12c9b570489a67d6cd9f3169c9",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-ui/appearance-button-001-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"appearance-button-002.tentative.html": [
|
||||
"5c9e9a280acaf0d8c871ddc75f57963da233ee76",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-ui/appearance-button-002.tentative-ref.html",
|
||||
"!="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"appearance-checkbox-001.html": [
|
||||
"54ebef94f24cd207f1e7a3f40f45cc825698df1c",
|
||||
[
|
||||
|
@ -193853,8 +193918,8 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"appearance-menulist-button-002.html": [
|
||||
"60a4312b16cdc02f79a9592d446177954ac0d5b2",
|
||||
"appearance-menulist-button-002.tentative.html": [
|
||||
"257945062356f62f78aa400d61a76ca51d28e223",
|
||||
[
|
||||
null,
|
||||
[
|
||||
|
@ -193893,7 +193958,7 @@
|
|||
]
|
||||
],
|
||||
"appearance-progress-bar-002.html": [
|
||||
"719b2dc220d253faa756e615d58ca947e73479f1",
|
||||
"b04af84ba1384beabfa6034b94c207aaf9d60974",
|
||||
[
|
||||
null,
|
||||
[
|
||||
|
@ -195192,6 +195257,32 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"webkit-appearance-button-001.html": [
|
||||
"c71a914723b36819e6918ca9f0358aaf98e85772",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-ui/appearance-button-001-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"webkit-appearance-button-002.tentative.html": [
|
||||
"4c322fa20e4af9f3f06fcf2b9a3782add378ec38",
|
||||
[
|
||||
null,
|
||||
[
|
||||
[
|
||||
"/css/css-ui/appearance-button-002.tentative-ref.html",
|
||||
"!="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"webkit-appearance-checkbox-001.html": [
|
||||
"09dd3d76cd66d59522b02d1b6a0c0126bb5eda2a",
|
||||
[
|
||||
|
@ -195244,8 +195335,8 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"webkit-appearance-menulist-button-002.html": [
|
||||
"078d568faa1795e3b86b7e623c2abc1d667b1c66",
|
||||
"webkit-appearance-menulist-button-002.tentative.html": [
|
||||
"9fccd82713c5f9187f77cc46940d73e10c79d765",
|
||||
[
|
||||
null,
|
||||
[
|
||||
|
@ -305870,6 +305961,16 @@
|
|||
"92ae71d83fcbea52e4120ed28af5438dd54d4509",
|
||||
[]
|
||||
],
|
||||
"reference": {
|
||||
"active-selection-021-ref.html": [
|
||||
"7790a3fad8a36f1709fea6a4155ed5af0f3c49d7",
|
||||
[]
|
||||
],
|
||||
"active-selection-024-ref.html": [
|
||||
"e6dda1c1371b53e12f9a6601eea67ac4f5604a3b",
|
||||
[]
|
||||
]
|
||||
},
|
||||
"selection-text-shadow-016-ref.html": [
|
||||
"5e3eabc976e2bc75b6a290f2b740b54d8cdbf99a",
|
||||
[]
|
||||
|
@ -306891,11 +306992,11 @@
|
|||
[]
|
||||
],
|
||||
"range-percent-intrinsic-size-2-ref.html": [
|
||||
"207b60d8f27ad3b1bb2b24a866d5de38807256e6",
|
||||
"9a6e9287d96089912d00684166494e5dcb902b40",
|
||||
[]
|
||||
],
|
||||
"range-percent-intrinsic-size-2a-ref.html": [
|
||||
"861d34c6a08d21fd9145a9697660646f31eda02d",
|
||||
"9aab2aede09aaaea2acb3fd5e3e98a6e70286fb3",
|
||||
[]
|
||||
],
|
||||
"slice-intrinsic-size-ref.html": [
|
||||
|
@ -312082,12 +312183,24 @@
|
|||
"7ce4b54a22c78576dc2318ebd651dfd1cce374ad",
|
||||
[]
|
||||
],
|
||||
"appearance-auto-input-non-widget-001-ref.html": [
|
||||
"ffbf612615516e72befbd5b84b848e1e93de46aa",
|
||||
[]
|
||||
],
|
||||
"appearance-auto-ref.html": [
|
||||
"5c5cdb42e7078b18ed1e4f58f34747ce76d50c02",
|
||||
[]
|
||||
],
|
||||
"appearance-button-001-ref.html": [
|
||||
"3e4da522e54314d0861f35c7b38fcfd39f58ea60",
|
||||
[]
|
||||
],
|
||||
"appearance-button-002.tentative-ref.html": [
|
||||
"c8c10ea511f51f31201c1dfb49df5d97ed021af1",
|
||||
[]
|
||||
],
|
||||
"appearance-progress-bar-002-ref.html": [
|
||||
"cc081a4559c57d2610710cd03c0c562309803516",
|
||||
"d243f0c75c75f57e6fd1ca629ccf0d3d924a0c13",
|
||||
[]
|
||||
],
|
||||
"appearance-revert-ref.html": [
|
||||
|
@ -339301,6 +339414,10 @@
|
|||
"677b2e116f6dcf6ff8340761d473e3dcf0f83af5",
|
||||
[]
|
||||
],
|
||||
"gamepad-extensions.idl": [
|
||||
"f2a2811b4b45d6175c6502deabf4411817484412",
|
||||
[]
|
||||
],
|
||||
"gamepad.idl": [
|
||||
"27541bf2553520dcf7f2ce52386014c9a4363377",
|
||||
[]
|
||||
|
@ -356351,7 +356468,7 @@
|
|||
[]
|
||||
],
|
||||
"requirements_firefox.txt": [
|
||||
"21906c57fd263500fcf7bf377219ed7506b71d9a",
|
||||
"a053971000bb0ef8d4b57631f1127e2240740729",
|
||||
[]
|
||||
],
|
||||
"requirements_ie.txt": [
|
||||
|
@ -382044,6 +382161,17 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"console-namespace-object-class-string.any.js": [
|
||||
"7b27e72d819251987f1bc53cb66e65f931d443d9",
|
||||
[
|
||||
"console/console-namespace-object-class-string.any.html",
|
||||
{}
|
||||
],
|
||||
[
|
||||
"console/console-namespace-object-class-string.any.worker.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"console-tests-historical.any.js": [
|
||||
"4c4d4c276d0cd4de4b7b2dc5ab71de6647cffaad",
|
||||
[
|
||||
|
@ -410346,6 +410474,13 @@
|
|||
]
|
||||
},
|
||||
"cssom": {
|
||||
"CSS-namespace-object-class-string.html": [
|
||||
"96c427f6cf2dfcc75c3fdf9fb3760a72d8ba8f7f",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"CSS.html": [
|
||||
"ba048c58acaac5cd2550fb21cb9b6e9ee8fb0bb1",
|
||||
[
|
||||
|
@ -412011,7 +412146,7 @@
|
|||
]
|
||||
],
|
||||
"scrollingElement.html": [
|
||||
"a438541120df4a3a4e3419aaddfca9d88bd080a5",
|
||||
"84d313741ce88f5e3ae77e5c85f79a88348caddc",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
|
@ -435949,6 +436084,29 @@
|
|||
}
|
||||
},
|
||||
"gamepad": {
|
||||
"idlharness-extensions.window.js": [
|
||||
"dcf76878fc9257d4b7f2cbb6d603d9848c55f083",
|
||||
[
|
||||
"gamepad/idlharness-extensions.window.html",
|
||||
{
|
||||
"script_metadata": [
|
||||
[
|
||||
"script",
|
||||
"/resources/WebIDLParser.js"
|
||||
],
|
||||
[
|
||||
"script",
|
||||
"/resources/idlharness.js"
|
||||
],
|
||||
[
|
||||
"timeout",
|
||||
"long"
|
||||
]
|
||||
],
|
||||
"timeout": "long"
|
||||
}
|
||||
]
|
||||
],
|
||||
"idlharness.window.js": [
|
||||
"0bbb0b3c701515743c24ca8ca67a96b5c61fa3cc",
|
||||
[
|
||||
|
@ -461414,6 +461572,13 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"resource-selection-resumes-onload.html": [
|
||||
"b166763d14f560013fdfd4bf0be25b5e725da2db",
|
||||
[
|
||||
null,
|
||||
{}
|
||||
]
|
||||
],
|
||||
"resource-selection-source-media.html": [
|
||||
"6332f0890dba075f7c8d465633d4a6f04b28fc3c",
|
||||
[
|
||||
|
@ -517273,6 +517438,17 @@
|
|||
]
|
||||
]
|
||||
},
|
||||
"namespace-object-class-string.any.js": [
|
||||
"2f63aca2c55e5b404b72474a43a9631dd3ae57be",
|
||||
[
|
||||
"wasm/jsapi/namespace-object-class-string.any.html",
|
||||
{}
|
||||
],
|
||||
[
|
||||
"wasm/jsapi/namespace-object-class-string.any.worker.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"proto-from-ctor-realm.html": [
|
||||
"72931cca77cf2af6e06616af32b4608fb02d38c0",
|
||||
[
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[hit-test-floats-003.html]
|
||||
[Miss float below something else]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
[hit-test-floats-005.html]
|
||||
[Miss clipped float]
|
||||
expected: FAIL
|
||||
|
|
@ -8,6 +8,9 @@
|
|||
[[data-expected-height\] 3]
|
||||
expected: FAIL
|
||||
|
||||
[[data-expected-height\] 4]
|
||||
[[data-expected-height\] 1]
|
||||
expected: FAIL
|
||||
|
||||
[[data-expected-height\] 2]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
[appearance-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -1,2 +0,0 @@
|
|||
[appearance-menulist-button-002.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
|||
[appearance-menulist-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
|||
[webkit-appearance-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -1,2 +0,0 @@
|
|||
[webkit-appearance-menulist-button-002.html]
|
||||
expected: FAIL
|
|
@ -0,0 +1,2 @@
|
|||
[webkit-appearance-menulist-button-002.tentative.html]
|
||||
expected: FAIL
|
|
@ -1,4 +0,0 @@
|
|||
[CaretPosition-001.html]
|
||||
[Element at (400, 100)]
|
||||
expected: FAIL
|
||||
|
|
@ -21,3 +21,6 @@
|
|||
[test the top of layer]
|
||||
expected: FAIL
|
||||
|
||||
[test some point of the element: top left corner]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -2,6 +2,3 @@
|
|||
[elementsFromPoint on the root document for points in iframe elements]
|
||||
expected: FAIL
|
||||
|
||||
[elementsFromPoint on inner documents]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -5,3 +5,24 @@
|
|||
[scrollingElement in no-quirks mode]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in quirks mode (body table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode ]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode (root table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode (body table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in quirks mode (root table, body table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in quirks mode (root table)]
|
||||
expected: FAIL
|
||||
|
||||
[scrollingElement in no-quirks mode (root table, body table)]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
[CSS-namespace-object-class-string.html]
|
||||
[Object.prototype.toString applied after deleting @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[@@toStringTag exists on the namespace object with the appropriate descriptor]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied after modifying the namespace object's @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied to the namespace object]
|
||||
expected: FAIL
|
||||
|
|
@ -312,9 +312,6 @@
|
|||
[fetch(): separate response Content-Type: text/plain ]
|
||||
expected: NOTRUN
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -330,3 +327,15 @@
|
|||
[<iframe>: combined response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -56,6 +56,3 @@
|
|||
[separate text/javascript x/x]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript error]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
[idlharness-extensions.window.html]
|
||||
[GamepadHapticActuator interface: existence and properties of interface prototype object]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: existence and properties of interface object]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface object name]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface object length]
|
||||
expected: FAIL
|
||||
|
||||
[Gamepad interface: attribute hapticActuators]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: existence and properties of interface prototype object's @@unscopables property]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: attribute type]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: existence and properties of interface prototype object's "constructor" property]
|
||||
expected: FAIL
|
||||
|
||||
[GamepadHapticActuator interface: operation pulse(double, double)]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
[traverse_the_history_5.html]
|
||||
[traverse_the_history_4.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
[cross-origin-objects-on-new-window.html]
|
||||
expected: TIMEOUT
|
|
@ -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,6 @@
|
|||
[iframe_sandbox_popups_nonescaping-1.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -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: FAIL
|
||||
expected: NOTRUN
|
||||
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
[iframe_sandbox_popups_nonescaping-3.html]
|
||||
type: testharness
|
||||
expected: CRASH
|
||||
[Check that popups from a sandboxed iframe do not escape the sandbox]
|
||||
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,9 +1,10 @@
|
|||
[promise-job-entry.html]
|
||||
expected: TIMEOUT
|
||||
[Fulfillment handler on fulfilled promise]
|
||||
expected: FAIL
|
||||
|
||||
[Rejection handler on pending-then-rejected promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[Sanity check: this all works as expected with no promises involved]
|
||||
expected: FAIL
|
||||
|
@ -15,5 +16,5 @@
|
|||
expected: FAIL
|
||||
|
||||
[Fulfillment handler on pending-then-fulfilled promise]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
[resource_initiator_types.html]
|
||||
expected: TIMEOUT
|
||||
[http://web-platform.test:8000/resource-timing/resources/all_resource_types.htm is not expected to be in the Resource Timing buffer]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
[namespace-object-class-string.any.html]
|
||||
[Object.prototype.toString applied after deleting @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[@@toStringTag exists on the namespace object with the appropriate descriptor]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied after modifying the namespace object's @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
|
||||
[namespace-object-class-string.any.worker.html]
|
||||
[Object.prototype.toString applied after deleting @@toStringTag]
|
||||
expected: FAIL
|
||||
|
||||
[@@toStringTag exists on the namespace object with the appropriate descriptor]
|
||||
expected: FAIL
|
||||
|
||||
[Object.prototype.toString applied after modifying the namespace object's @@toStringTag]
|
||||
expected: FAIL
|
||||
|
|
@ -1,4 +1,5 @@
|
|||
[realtimeanalyser-fft-scaling.html]
|
||||
expected: TIMEOUT
|
||||
[X 2048-point FFT peak position is not equal to 64. Got 0.]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
[Worker-constructor.html]
|
||||
expected: ERROR
|
|
@ -0,0 +1,40 @@
|
|||
"use strict";
|
||||
// https://heycam.github.io/webidl/#es-namespaces
|
||||
// https://console.spec.whatwg.org/#console-namespace
|
||||
|
||||
test(() => {
|
||||
assert_own_property(console, Symbol.toStringTag);
|
||||
|
||||
const propDesc = Object.getOwnPropertyDescriptor(console, Symbol.toStringTag);
|
||||
assert_equals(propDesc.value, "console", "value");
|
||||
assert_equals(propDesc.writable, false, "writable");
|
||||
assert_equals(propDesc.enumerable, false, "enumerable");
|
||||
assert_equals(propDesc.configurable, true, "configurable");
|
||||
}, "@@toStringTag exists on the namespace object with the appropriate descriptor");
|
||||
|
||||
test(() => {
|
||||
assert_equals(console.toString(), "[object console]");
|
||||
assert_equals(Object.prototype.toString.call(console), "[object console]");
|
||||
}, "Object.prototype.toString applied to the namespace object");
|
||||
|
||||
test(t => {
|
||||
assert_own_property(console, Symbol.toStringTag, "Precondition: @@toStringTag on the namespace object");
|
||||
t.add_cleanup(() => {
|
||||
Object.defineProperty(console, Symbol.toStringTag, { value: "console" });
|
||||
});
|
||||
|
||||
Object.defineProperty(console, Symbol.toStringTag, { value: "Test" });
|
||||
assert_equals(console.toString(), "[object Test]");
|
||||
assert_equals(Object.prototype.toString.call(console), "[object Test]");
|
||||
}, "Object.prototype.toString applied after modifying the namespace object's @@toStringTag");
|
||||
|
||||
test(t => {
|
||||
assert_own_property(console, Symbol.toStringTag, "Precondition: @@toStringTag on the namespace object");
|
||||
t.add_cleanup(() => {
|
||||
Object.defineProperty(console, Symbol.toStringTag, { value: "console" });
|
||||
});
|
||||
|
||||
assert_true(delete console[Symbol.toStringTag]);
|
||||
assert_equals(console.toString(), "[object Object]");
|
||||
assert_equals(Object.prototype.toString.call(console), "[object Object]");
|
||||
}, "Object.prototype.toString applied after deleting @@toStringTag");
|
|
@ -0,0 +1,54 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>CSS Pseudo-Elements Test: active selection, color and 'text-decoration: underline overline line-through'</title>
|
||||
|
||||
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||
<link rel="help" href="https://www.w3.org/TR/css-pseudo-4/#highlight-styling">
|
||||
<link rel="match" href="reference/active-selection-021-ref.html">
|
||||
|
||||
<meta content="" name="flags">
|
||||
|
||||
<style>
|
||||
div
|
||||
{
|
||||
color: red;
|
||||
font-size: 300%;
|
||||
text-decoration: underline overline line-through;
|
||||
}
|
||||
|
||||
div::selection
|
||||
{
|
||||
color: green;
|
||||
}
|
||||
</style>
|
||||
|
||||
<!--
|
||||
"
|
||||
The element's own text decorations (both line decorations
|
||||
and emphasis marks) are thus drawn in the pseudo-element's
|
||||
own color when that is not currentColor, regardless of
|
||||
their original color or fill specifications.
|
||||
"
|
||||
coming from
|
||||
https://www.w3.org/TR/css-pseudo-4/#highlight-painting
|
||||
-->
|
||||
|
||||
<script>
|
||||
function startTest()
|
||||
{
|
||||
var targetRange = document.createRange();
|
||||
/* We first create an empty range */
|
||||
targetRange.selectNodeContents(document.getElementById("test"));
|
||||
/* Then we set the range boundaries to the children of div#test */
|
||||
window.getSelection().addRange(targetRange);
|
||||
/* Finally, we now select such range of content */
|
||||
}
|
||||
</script>
|
||||
|
||||
<body onload="startTest();">
|
||||
|
||||
<p>Test passes if each glyph of "Selected Text" is green and <strong>not red</strong> and if the underline, the overline and the line-through are also green and not red.
|
||||
|
||||
<div id="test">Selected Text</div>
|
|
@ -0,0 +1,49 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>CSS Pseudo-Elements Test: active selection and first-letter pseudo-element</title>
|
||||
|
||||
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||
<link rel="help" href="https://www.w3.org/TR/css-pseudo-4/#highlight-selectors">
|
||||
<link rel="match" href="reference/active-selection-024-ref.html">
|
||||
|
||||
<meta content="" name="flags">
|
||||
<meta name="assert" content="In this test, the ::selection pseudo-element must paint over the ::first-letter pseudo-element since the first letter is being selected.">
|
||||
|
||||
<style>
|
||||
div
|
||||
{
|
||||
color: black;
|
||||
font-size: 300%;
|
||||
}
|
||||
|
||||
div::first-letter
|
||||
{
|
||||
color: red;
|
||||
}
|
||||
|
||||
div::selection
|
||||
{
|
||||
background-color: yellow;
|
||||
color: green;
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
function startTest()
|
||||
{
|
||||
var targetRange = document.createRange();
|
||||
/* We first create an empty range */
|
||||
targetRange.selectNodeContents(document.getElementById("test"));
|
||||
/* Then we set the range boundaries to the children of div#test */
|
||||
window.getSelection().addRange(targetRange);
|
||||
/* Finally, we now select such range of content */
|
||||
}
|
||||
</script>
|
||||
|
||||
<body onload="startTest();">
|
||||
|
||||
<p>Test passes if background color of "Selected Text" is yellow and if each glyph of "Selected Text" is green.
|
||||
|
||||
<div id="test">Selected Text</div>
|
|
@ -0,0 +1,20 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>CSS Reftest Reference</title>
|
||||
|
||||
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||
|
||||
<style>
|
||||
div
|
||||
{
|
||||
color: green;
|
||||
font-size: 300%;
|
||||
text-decoration: underline overline line-through;
|
||||
}
|
||||
</style>
|
||||
|
||||
<p>Test passes if each glyph of "Selected Text" is green and <strong>not red</strong> and if the underline, the overline and the line-through are also green and not red.
|
||||
|
||||
<div>Selected Text</div>
|
|
@ -0,0 +1,21 @@
|
|||
<!DOCTYPE html>
|
||||
|
||||
<meta charset="UTF-8">
|
||||
|
||||
<title>CSS Reftest Reference</title>
|
||||
|
||||
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
|
||||
|
||||
<style>
|
||||
div
|
||||
{
|
||||
background-color: yellow;
|
||||
color: green;
|
||||
display: inline;
|
||||
font-size: 300%;
|
||||
}
|
||||
</style>
|
||||
|
||||
<p>Test passes if background color of "Selected Text" is yellow and if each glyph of "Selected Text" is green.
|
||||
|
||||
<div>Selected Text</div>
|
|
@ -42,6 +42,7 @@ div {
|
|||
input[orient="vertical"] {
|
||||
-webkit-appearance: slider-vertical;
|
||||
-webkit-appearance: range;
|
||||
appearance: auto;
|
||||
}
|
||||
|
||||
</style></head><body>
|
||||
|
|
|
@ -52,6 +52,7 @@ div {
|
|||
input[orient="vertical"] {
|
||||
-webkit-appearance: slider-vertical;
|
||||
-webkit-appearance: range;
|
||||
appearance: auto;
|
||||
}
|
||||
|
||||
</style></head><body>
|
||||
|
|
|
@ -35,10 +35,6 @@ div {
|
|||
grid: auto / min-content;
|
||||
place-items: start;
|
||||
}
|
||||
input[orient="vertical"] {
|
||||
-webkit-appearance: slider-vertical;
|
||||
-webkit-appearance: range;
|
||||
}
|
||||
|
||||
</style></head><body>
|
||||
|
||||
|
|
|
@ -45,10 +45,6 @@ div {
|
|||
grid: auto / min-content;
|
||||
place-items: start;
|
||||
}
|
||||
input[orient="vertical"] {
|
||||
-webkit-appearance: slider-vertical;
|
||||
-webkit-appearance: range;
|
||||
}
|
||||
|
||||
</style></head><body>
|
||||
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>Reference: appearance: auto on non-widget input elements</title>
|
||||
<input type="hidden" value="abc">
|
||||
<input type="image" value="def">
|
||||
<input type="file">
|
|
@ -0,0 +1,12 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Basic User Interface Test: appearance: auto on non-widget input elements</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-ui-4/#appearance-switching">
|
||||
<meta name="assert" content="The default widget type for these elements is none.">
|
||||
<link rel="match" href="appearance-auto-input-non-widget-001-ref.html">
|
||||
<style>
|
||||
input { appearance: auto; }
|
||||
</style>
|
||||
<input type="hidden" value="abc">
|
||||
<input type="image" value="def">
|
||||
<input type="file">
|
|
@ -0,0 +1,22 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>Reference: appearance: button</title>
|
||||
<style>
|
||||
#container { width: 500px; }
|
||||
#container > :not(a) { appearance: auto; }
|
||||
</style>
|
||||
<div id="container">
|
||||
<input type="text" value="input-text">
|
||||
<input type="search" value="input-search">
|
||||
<textarea>textarea</textarea>
|
||||
<input type="button" value="input-button">
|
||||
<input type="submit" value="input-submit">
|
||||
<input type="reset" value="input-reset">
|
||||
<input type="range">
|
||||
<input type="checkbox">
|
||||
<input type="radio">
|
||||
<input type="color">
|
||||
<select multiple><option>select-multiple</option></select>
|
||||
<meter value=0.5></meter>
|
||||
<progress value=0.5></progress>
|
||||
</div>
|
|
@ -0,0 +1,25 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Basic User Interface Test: appearance: button</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-ui-4/#appearance-switching">
|
||||
<meta name="assert" content="button is treated as auto on input, textarea, list box select, meter, and progress elements.">
|
||||
<link rel="match" href="appearance-button-001-ref.html">
|
||||
<style>
|
||||
#container { width: 500px; }
|
||||
#container > * { appearance: none; appearance: button; }
|
||||
</style>
|
||||
<div id="container">
|
||||
<input type="text" value="input-text">
|
||||
<input type="search" value="input-search">
|
||||
<textarea>textarea</textarea>
|
||||
<input type="button" value="input-button">
|
||||
<input type="submit" value="input-submit">
|
||||
<input type="reset" value="input-reset">
|
||||
<input type="range">
|
||||
<input type="checkbox">
|
||||
<input type="radio">
|
||||
<input type="color">
|
||||
<select multiple><option>select-multiple</option></select>
|
||||
<meter value=0.5></meter>
|
||||
<progress value=0.5></progress>
|
||||
</div>
|
|
@ -0,0 +1,4 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>Reference: appearance: button</title>
|
||||
<select><option>select</option></select>
|
|
@ -0,0 +1,16 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Basic User Interface Test: appearance: button</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-ui-4/#appearance-switching">
|
||||
<meta name="assert" content="Drop-down select elements with appearance: button are rendered differently from appearance: auto.">
|
||||
<link rel="mismatch" href="appearance-button-002.tentative-ref.html">
|
||||
<style>
|
||||
select { appearance: none; appearance: button; }
|
||||
</style>
|
||||
<!--
|
||||
Test marked as tentative since although css-ui says "The element is rendered
|
||||
with the look and feel of a push button, similar to the appearance: auto
|
||||
rendering of the [HTML] button element.", there is no requirement that the
|
||||
look and feel of a push button is different from that of a drop-down select.
|
||||
-->
|
||||
<select><option>select</option></select>
|
|
@ -8,6 +8,18 @@
|
|||
#container { width: 500px; }
|
||||
#container > #drop-down-select { appearance: none; appearance: menulist-button; }
|
||||
</style>
|
||||
<!--
|
||||
Test marked as tentative since although css-ui says:
|
||||
|
||||
For drop-down box select elements, the element is rendered as a drop-down
|
||||
box, including a "drop-down button", but not necessarily using a native
|
||||
control of the host operating system. For such elements, CSS properties
|
||||
such as color, background-color, and border (that can be disregarded for
|
||||
auto) should not be disregarded.
|
||||
|
||||
there is no requirement that this rendering is any different from the
|
||||
automatic widget appearance of a drop-down select.
|
||||
-->
|
||||
<div id="container">
|
||||
<a>a</a>
|
||||
<button>button</button>
|
|
@ -1,4 +1,4 @@
|
|||
<!doctype html>
|
||||
<title>CSS Test Reference</title>
|
||||
<progress style="appearance:auto">
|
||||
<progress style="appearance:none">
|
||||
<progress style="appearance:auto" value="0.5">
|
||||
<progress style="appearance:none" value="0.5">
|
||||
|
|
|
@ -7,8 +7,8 @@
|
|||
#progress1 { appearance: none }
|
||||
#progress2 { appearance: auto }
|
||||
</style>
|
||||
<progress id="progress1">
|
||||
<progress id="progress2">
|
||||
<progress id="progress1" value="0.5">
|
||||
<progress id="progress2" value="0.5">
|
||||
<script>
|
||||
document.body.offsetTop;
|
||||
progress1.style.appearance = "auto";
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
<!-- DO NOT EDIT THIS FILE.
|
||||
Edit the appearance-* file instead and then run:
|
||||
./tools/appearance-build-webkit-reftests.py
|
||||
-->
|
||||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Basic User Interface Test: -webkit-appearance: button</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-ui-4/#appearance-switching">
|
||||
<meta name="assert" content="button is treated as auto on input, textarea, list box select, meter, and progress elements.">
|
||||
<link rel="match" href="appearance-button-001-ref.html">
|
||||
<style>
|
||||
#container { width: 500px; }
|
||||
#container > * { -webkit-appearance: none; -webkit-appearance: button; }
|
||||
</style>
|
||||
<div id="container">
|
||||
<input type="text" value="input-text">
|
||||
<input type="search" value="input-search">
|
||||
<textarea>textarea</textarea>
|
||||
<input type="button" value="input-button">
|
||||
<input type="submit" value="input-submit">
|
||||
<input type="reset" value="input-reset">
|
||||
<input type="range">
|
||||
<input type="checkbox">
|
||||
<input type="radio">
|
||||
<input type="color">
|
||||
<select multiple><option>select-multiple</option></select>
|
||||
<meter value=0.5></meter>
|
||||
<progress value=0.5></progress>
|
||||
</div>
|
|
@ -0,0 +1,16 @@
|
|||
<!DOCTYPE html>
|
||||
<meta charset="utf-8">
|
||||
<title>CSS Basic User Interface Test: -webkit-appearance: button</title>
|
||||
<link rel="help" href="https://drafts.csswg.org/css-ui-4/#appearance-switching">
|
||||
<meta name="assert" content="Drop-down select elements with appearance: button are rendered differently from appearance: auto.">
|
||||
<link rel="mismatch" href="appearance-button-002.tentative-ref.html">
|
||||
<style>
|
||||
select { -webkit-appearance: none; -webkit-appearance: button; }
|
||||
</style>
|
||||
<!--
|
||||
Test marked as tentative since although css-ui says "The element is rendered
|
||||
with the look and feel of a push button, similar to the appearance: auto
|
||||
rendering of the [HTML] button element.", there is no requirement that the
|
||||
look and feel of a push button is different from that of a drop-down select.
|
||||
-->
|
||||
<select><option>select</option></select>
|
|
@ -12,6 +12,18 @@ Edit the appearance-* file instead and then run:
|
|||
#container { width: 500px; }
|
||||
#container > #drop-down-select { -webkit-appearance: none; -webkit-appearance: menulist-button; }
|
||||
</style>
|
||||
<!--
|
||||
Test marked as tentative since although css-ui says:
|
||||
|
||||
For drop-down box select elements, the element is rendered as a drop-down
|
||||
box, including a "drop-down button", but not necessarily using a native
|
||||
control of the host operating system. For such elements, CSS properties
|
||||
such as color, background-color, and border (that can be disregarded for
|
||||
auto) should not be disregarded.
|
||||
|
||||
there is no requirement that this rendering is any different from the
|
||||
automatic widget appearance of a drop-down select.
|
||||
-->
|
||||
<div id="container">
|
||||
<a>a</a>
|
||||
<button>button</button>
|
|
@ -3,83 +3,120 @@
|
|||
<title>cssom-view - scrollingElement</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<iframe id="quirksframe"></iframe>
|
||||
<iframe id="nonquirksframe"></iframe>
|
||||
<div id="log"></div>
|
||||
<script>
|
||||
async_test(function() {
|
||||
var quirksFrame = document.getElementById("quirksframe");
|
||||
quirksFrame.onload = this.step_func_done(function() {
|
||||
var quirksDoc = quirksFrame.contentDocument;
|
||||
assert_equals(quirksDoc.compatMode, "BackCompat", "Should be in quirks mode.");
|
||||
assert_not_equals(quirksDoc.body, null, "Should have a body element");
|
||||
function makeDescription(rootDisplay, bodyDisplay) {
|
||||
let a = [];
|
||||
if (rootDisplay) {
|
||||
a.push(`root ${rootDisplay}`);
|
||||
}
|
||||
if (bodyDisplay) {
|
||||
a.push(`body ${bodyDisplay}`);
|
||||
}
|
||||
let s = a.join(", ");
|
||||
if (s) {
|
||||
s = ` (${s})`;
|
||||
}
|
||||
return s;
|
||||
}
|
||||
|
||||
// Tests for quirks mode document.
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body,
|
||||
"scrollingElement in quirks mode should default to body element.");
|
||||
function quirksTest(rootDisplay, bodyDisplay) {
|
||||
async_test(function() {
|
||||
let quirksFrame = document.createElement("iframe");
|
||||
quirksFrame.onload = this.step_func_done(function() {
|
||||
var quirksDoc = quirksFrame.contentDocument;
|
||||
assert_equals(quirksDoc.compatMode, "BackCompat", "Should be in quirks mode.");
|
||||
assert_not_equals(quirksDoc.body, null, "Should have a body element");
|
||||
|
||||
quirksDoc.documentElement.style.overflow = "scroll";
|
||||
quirksDoc.body.style.overflow = "scroll";
|
||||
assert_equals(quirksDoc.scrollingElement, null,
|
||||
"scrollingElement in quirks mode should be null if overflow of body and root element isn't visible.");
|
||||
quirksDoc.documentElement.style.overflow = "visible";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
quirksDoc.documentElement.style.overflow = "scroll";
|
||||
quirksDoc.body.style.overflow = "visible";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
quirksDoc.documentElement.style.overflow = "visible";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
quirksDoc.documentElement.style.display = rootDisplay;
|
||||
quirksDoc.body.style.display = bodyDisplay;
|
||||
|
||||
quirksDoc.body.style.display = "none";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body)
|
||||
quirksDoc.body.style.display = "block";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
// Tests for quirks mode document.
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body,
|
||||
"scrollingElement in quirks mode should default to body element.");
|
||||
|
||||
quirksDoc.documentElement.appendChild(quirksDoc.createElement("body"));
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.getElementsByTagName("body")[0]);
|
||||
quirksDoc.documentElement.removeChild(quirksDoc.documentElement.lastChild);
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
quirksDoc.documentElement.style.overflow = "scroll";
|
||||
quirksDoc.body.style.overflow = "scroll";
|
||||
assert_equals(quirksDoc.scrollingElement, null,
|
||||
"scrollingElement in quirks mode should be null if overflow of body and root element isn't visible.");
|
||||
quirksDoc.documentElement.style.overflow = "visible";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
quirksDoc.documentElement.style.overflow = "scroll";
|
||||
quirksDoc.body.style.overflow = "visible";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
quirksDoc.documentElement.style.overflow = "visible";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
|
||||
quirksDoc.documentElement.removeChild(quirksDoc.body);
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
quirksDoc.documentElement.appendChild(quirksDoc.createElementNS("foobarNS", "body"));
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
quirksDoc.body.style.display = "none";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body)
|
||||
quirksDoc.body.style.display = "block";
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
|
||||
quirksDoc.removeChild(quirksDoc.documentElement);
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
quirksDoc.documentElement.appendChild(quirksDoc.createElement("body"));
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.getElementsByTagName("body")[0]);
|
||||
quirksDoc.documentElement.removeChild(quirksDoc.documentElement.lastChild);
|
||||
assert_equals(quirksDoc.scrollingElement, quirksDoc.body);
|
||||
|
||||
quirksDoc.appendChild(quirksDoc.createElementNS("foobarNS", "html"));
|
||||
quirksDoc.documentElement.appendChild(quirksDoc.createElement("body"));
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
quirksDoc.documentElement.removeChild(quirksDoc.body);
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
quirksDoc.documentElement.appendChild(quirksDoc.createElementNS("foobarNS", "body"));
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
|
||||
quirksDoc.removeChild(quirksDoc.documentElement);
|
||||
quirksDoc.appendChild(quirksDoc.createElement("body"));
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
});
|
||||
quirksFrame.src =
|
||||
URL.createObjectURL(new Blob([""], { type: "text/html" }));
|
||||
}, "scrollingElement in quirks mode");
|
||||
quirksDoc.removeChild(quirksDoc.documentElement);
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
|
||||
async_test(function() {
|
||||
var nonQuirksFrame = document.getElementById("nonquirksframe");
|
||||
nonQuirksFrame.onload = this.step_func_done(function() {
|
||||
var nonQuirksDoc = nonQuirksFrame.contentDocument;
|
||||
assert_equals(nonQuirksDoc.compatMode, "CSS1Compat", "Should be in standards mode.");
|
||||
assert_not_equals(nonQuirksDoc.body, null, "Should have a body element");
|
||||
quirksDoc.appendChild(quirksDoc.createElementNS("foobarNS", "html"));
|
||||
quirksDoc.documentElement.appendChild(quirksDoc.createElement("body"));
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
|
||||
assert_equals(nonQuirksDoc.scrollingElement, nonQuirksDoc.documentElement,
|
||||
"scrollingElement in standards mode should be the document element.");
|
||||
nonQuirksDoc.documentElement.style.overflow = "scroll";
|
||||
nonQuirksDoc.body.style.overflow = "scroll";
|
||||
assert_equals(nonQuirksDoc.scrollingElement, nonQuirksDoc.documentElement);
|
||||
quirksDoc.removeChild(quirksDoc.documentElement);
|
||||
quirksDoc.appendChild(quirksDoc.createElement("body"));
|
||||
assert_equals(quirksDoc.scrollingElement, null);
|
||||
|
||||
nonQuirksDoc.removeChild(nonQuirksDoc.documentElement);
|
||||
assert_equals(nonQuirksDoc.scrollingElement, null);
|
||||
nonQuirksDoc.appendChild(nonQuirksDoc.createElement("foobar"));
|
||||
assert_equals(nonQuirksDoc.scrollingElement.localName, "foobar");
|
||||
});
|
||||
nonQuirksFrame.src =
|
||||
URL.createObjectURL(new Blob(["<!doctype html>"], { type: "text/html" }));
|
||||
}, "scrollingElement in no-quirks mode");
|
||||
quirksFrame.remove();
|
||||
});
|
||||
quirksFrame.src =
|
||||
URL.createObjectURL(new Blob([], { type: "text/html" }));
|
||||
document.body.append(quirksFrame);
|
||||
}, `scrollingElement in quirks mode${makeDescription(rootDisplay, bodyDisplay)}`);
|
||||
}
|
||||
|
||||
function nonQuirksTest(rootDisplay, bodyDisplay) {
|
||||
async_test(function() {
|
||||
let nonQuirksFrame = document.createElement("iframe");
|
||||
nonQuirksFrame.onload = this.step_func_done(function() {
|
||||
var nonQuirksDoc = nonQuirksFrame.contentDocument;
|
||||
assert_equals(nonQuirksDoc.compatMode, "CSS1Compat", "Should be in standards mode.");
|
||||
assert_not_equals(nonQuirksDoc.body, null, "Should have a body element");
|
||||
|
||||
nonQuirksDoc.documentElement.style.display = rootDisplay;
|
||||
nonQuirksDoc.body.style.display = bodyDisplay;
|
||||
|
||||
// Tests for non-quirks mode document.
|
||||
assert_equals(nonQuirksDoc.scrollingElement, nonQuirksDoc.documentElement,
|
||||
"scrollingElement in standards mode should be the document element.");
|
||||
nonQuirksDoc.documentElement.style.overflow = "scroll";
|
||||
nonQuirksDoc.body.style.overflow = "scroll";
|
||||
assert_equals(nonQuirksDoc.scrollingElement, nonQuirksDoc.documentElement);
|
||||
|
||||
nonQuirksDoc.removeChild(nonQuirksDoc.documentElement);
|
||||
assert_equals(nonQuirksDoc.scrollingElement, null);
|
||||
nonQuirksDoc.appendChild(nonQuirksDoc.createElement("foobar"));
|
||||
assert_equals(nonQuirksDoc.scrollingElement.localName, "foobar");
|
||||
|
||||
nonQuirksFrame.remove();
|
||||
});
|
||||
nonQuirksFrame.src =
|
||||
URL.createObjectURL(new Blob([`<!doctype html>`], { type: "text/html" }));
|
||||
document.body.append(nonQuirksFrame);
|
||||
}, `scrollingElement in no-quirks mode ${makeDescription(rootDisplay, bodyDisplay)}`);
|
||||
}
|
||||
|
||||
for (let rootDisplay of ["", "table"]) {
|
||||
for (let bodyDisplay of ["", "table"]) {
|
||||
quirksTest(rootDisplay, bodyDisplay);
|
||||
nonQuirksTest(rootDisplay, bodyDisplay);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -0,0 +1,47 @@
|
|||
<!doctype html>
|
||||
<meta charset="utf-8">
|
||||
<title>CSSOM - Symbol.toStringTag value of CSS namespace object</title>
|
||||
<link rel="help" href="https://heycam.github.io/webidl/#es-namespaces">
|
||||
<link rel="help" href="https://drafts.csswg.org/cssom/#namespacedef-css">
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script>
|
||||
"use strict";
|
||||
|
||||
test(() => {
|
||||
assert_own_property(CSS, Symbol.toStringTag);
|
||||
|
||||
const propDesc = Object.getOwnPropertyDescriptor(CSS, Symbol.toStringTag);
|
||||
assert_equals(propDesc.value, "CSS", "value");
|
||||
assert_equals(propDesc.writable, false, "writable");
|
||||
assert_equals(propDesc.enumerable, false, "enumerable");
|
||||
assert_equals(propDesc.configurable, true, "configurable");
|
||||
}, "@@toStringTag exists on the namespace object with the appropriate descriptor");
|
||||
|
||||
test(() => {
|
||||
assert_equals(CSS.toString(), "[object CSS]");
|
||||
assert_equals(Object.prototype.toString.call(CSS), "[object CSS]");
|
||||
}, "Object.prototype.toString applied to the namespace object");
|
||||
|
||||
test(t => {
|
||||
assert_own_property(CSS, Symbol.toStringTag, "Precondition: @@toStringTag on the namespace object");
|
||||
t.add_cleanup(() => {
|
||||
Object.defineProperty(CSS, Symbol.toStringTag, { value: "CSS" });
|
||||
});
|
||||
|
||||
Object.defineProperty(CSS, Symbol.toStringTag, { value: "Test" });
|
||||
assert_equals(CSS.toString(), "[object Test]");
|
||||
assert_equals(Object.prototype.toString.call(CSS), "[object Test]");
|
||||
}, "Object.prototype.toString applied after modifying the namespace object's @@toStringTag");
|
||||
|
||||
test(t => {
|
||||
assert_own_property(CSS, Symbol.toStringTag, "Precondition: @@toStringTag on the namespace object");
|
||||
t.add_cleanup(() => {
|
||||
Object.defineProperty(CSS, Symbol.toStringTag, { value: "CSS" });
|
||||
});
|
||||
|
||||
assert_true(delete CSS[Symbol.toStringTag]);
|
||||
assert_equals(CSS.toString(), "[object Object]");
|
||||
assert_equals(Object.prototype.toString.call(CSS), "[object Object]");
|
||||
}, "Object.prototype.toString applied after deleting @@toStringTag");
|
||||
</script>
|
|
@ -0,0 +1,12 @@
|
|||
// META: script=/resources/WebIDLParser.js
|
||||
// META: script=/resources/idlharness.js
|
||||
// META: timeout=long
|
||||
|
||||
// https://w3c.github.io/gamepad/extensions.html
|
||||
|
||||
'use strict';
|
||||
|
||||
idl_test(
|
||||
['gamepad-extensions'],
|
||||
['gamepad'],
|
||||
);
|
|
@ -0,0 +1,18 @@
|
|||
<!doctype html>
|
||||
<title>resource selection should not delay the load event indefinitely</title>
|
||||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<div id=log></div>
|
||||
<video></video>
|
||||
<script>
|
||||
async_test(function(t) {
|
||||
const v = document.querySelector('video');
|
||||
v.onloadstart = t.unreached_func("loadstart event should not be fired when the resource selection algorithm cannot determine mode");
|
||||
const s = document.createElement('source');
|
||||
v.appendChild(s); // this will trigger resource selection
|
||||
v.removeChild(s); // force an early return in resource selection algorithm
|
||||
window.onload = t.step_func_done(function() {
|
||||
assert_equals(v.networkState, v.NETWORK_EMPTY);
|
||||
});
|
||||
});
|
||||
</script>
|
|
@ -0,0 +1,39 @@
|
|||
// GENERATED CONTENT - DO NOT EDIT
|
||||
// Content was automatically extracted by Reffy into reffy-reports
|
||||
// (https://github.com/tidoust/reffy-reports)
|
||||
// Source: Gamepad Extensions (https://w3c.github.io/gamepad/extensions.html)
|
||||
|
||||
enum GamepadHand {
|
||||
"", /* unknown, both hands, or not applicable */
|
||||
"left",
|
||||
"right"
|
||||
};
|
||||
|
||||
[Exposed=Window]
|
||||
interface GamepadHapticActuator {
|
||||
readonly attribute GamepadHapticActuatorType type;
|
||||
Promise<boolean> pulse(double value, double duration);
|
||||
};
|
||||
|
||||
enum GamepadHapticActuatorType {
|
||||
"vibration"
|
||||
};
|
||||
|
||||
[Exposed=Window]
|
||||
interface GamepadPose {
|
||||
readonly attribute boolean hasOrientation;
|
||||
readonly attribute boolean hasPosition;
|
||||
|
||||
readonly attribute Float32Array? position;
|
||||
readonly attribute Float32Array? linearVelocity;
|
||||
readonly attribute Float32Array? linearAcceleration;
|
||||
readonly attribute Float32Array? orientation;
|
||||
readonly attribute Float32Array? angularVelocity;
|
||||
readonly attribute Float32Array? angularAcceleration;
|
||||
};
|
||||
|
||||
partial interface Gamepad {
|
||||
readonly attribute GamepadHand hand;
|
||||
readonly attribute FrozenArray<GamepadHapticActuator> hapticActuators;
|
||||
readonly attribute GamepadPose? pose;
|
||||
};
|
|
@ -1,4 +1,4 @@
|
|||
marionette_driver==3.0.0
|
||||
marionette_driver==3.1.0
|
||||
mozcrash==2.0.0
|
||||
mozinstall==2.0.0
|
||||
mozleak==0.2
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
"use strict";
|
||||
// https://heycam.github.io/webidl/#es-namespaces
|
||||
// https://webassembly.github.io/spec/js-api/#namespacedef-webassembly
|
||||
|
||||
test(() => {
|
||||
assert_own_property(WebAssembly, Symbol.toStringTag);
|
||||
|
||||
const propDesc = Object.getOwnPropertyDescriptor(WebAssembly, Symbol.toStringTag);
|
||||
assert_equals(propDesc.value, "WebAssembly", "value");
|
||||
assert_equals(propDesc.writable, false, "writable");
|
||||
assert_equals(propDesc.enumerable, false, "enumerable");
|
||||
assert_equals(propDesc.configurable, true, "configurable");
|
||||
}, "@@toStringTag exists on the namespace object with the appropriate descriptor");
|
||||
|
||||
test(() => {
|
||||
assert_equals(WebAssembly.toString(), "[object WebAssembly]");
|
||||
assert_equals(Object.prototype.toString.call(WebAssembly), "[object WebAssembly]");
|
||||
}, "Object.prototype.toString applied to the namespace object");
|
||||
|
||||
test(t => {
|
||||
assert_own_property(WebAssembly, Symbol.toStringTag, "Precondition: @@toStringTag on the namespace object");
|
||||
t.add_cleanup(() => {
|
||||
Object.defineProperty(WebAssembly, Symbol.toStringTag, { value: "WebAssembly" });
|
||||
});
|
||||
|
||||
Object.defineProperty(WebAssembly, Symbol.toStringTag, { value: "Test" });
|
||||
assert_equals(WebAssembly.toString(), "[object Test]");
|
||||
assert_equals(Object.prototype.toString.call(WebAssembly), "[object Test]");
|
||||
}, "Object.prototype.toString applied after modifying the namespace object's @@toStringTag");
|
||||
|
||||
test(t => {
|
||||
assert_own_property(WebAssembly, Symbol.toStringTag, "Precondition: @@toStringTag on the namespace object");
|
||||
t.add_cleanup(() => {
|
||||
Object.defineProperty(WebAssembly, Symbol.toStringTag, { value: "WebAssembly" });
|
||||
});
|
||||
|
||||
assert_true(delete WebAssembly[Symbol.toStringTag]);
|
||||
assert_equals(WebAssembly.toString(), "[object Object]");
|
||||
assert_equals(Object.prototype.toString.call(WebAssembly), "[object Object]");
|
||||
}, "Object.prototype.toString applied after deleting @@toStringTag");
|
|
@ -203,3 +203,6 @@
|
|||
[WebGL test #42: attachment 5 should be 0,255,0,255\nat (4, 0) expected: 0,255,0,255 was 255,0,0,0]
|
||||
expected: FAIL
|
||||
|
||||
[WebGL test #51: attachment 6 should be 0,255,0,255\nat (0, 0) expected: 0,255,0,255 was 0,0,0,255]
|
||||
expected: FAIL
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue