mirror of
https://github.com/servo/servo.git
synced 2025-08-05 21:50:18 +01:00
Update web-platform-tests to revision 7c15d5b4e87b3a20ca2bc523b33303131510bc01
This commit is contained in:
parent
4ded3038c0
commit
e864d8823c
69 changed files with 561 additions and 403 deletions
|
@ -14,9 +14,6 @@
|
|||
[Revoke blob URL after creating Request, will fetch]
|
||||
expected: FAIL
|
||||
|
||||
[Revoke blob URL after calling fetch, fetch should succeed]
|
||||
expected: FAIL
|
||||
|
||||
|
||||
[url-with-fetch.any.html]
|
||||
[Untitled]
|
||||
|
|
|
@ -178985,6 +178985,18 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/filter-effects/morphology-mirrored.html": [
|
||||
[
|
||||
"css/filter-effects/morphology-mirrored.html",
|
||||
[
|
||||
[
|
||||
"/css/filter-effects/reference/green-100x100.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/filter-effects/svg-feflood-001.html": [
|
||||
[
|
||||
"css/filter-effects/svg-feflood-001.html",
|
||||
|
@ -213624,9 +213636,6 @@
|
|||
"common/canvas-tests.js.headers": [
|
||||
[]
|
||||
],
|
||||
"common/css-red.txt": [
|
||||
[]
|
||||
],
|
||||
"common/domain-setter.sub.html": [
|
||||
[]
|
||||
],
|
||||
|
@ -213639,9 +213648,6 @@
|
|||
"common/echo.py": [
|
||||
[]
|
||||
],
|
||||
"common/entities.json": [
|
||||
[]
|
||||
],
|
||||
"common/form-submission.py": [
|
||||
[]
|
||||
],
|
||||
|
@ -271419,6 +271425,9 @@
|
|||
"html/semantics/document-metadata/the-style-element/html_style_in_comment-ref.html": [
|
||||
[]
|
||||
],
|
||||
"html/semantics/document-metadata/the-style-element/support/css-red.txt": [
|
||||
[]
|
||||
],
|
||||
"html/semantics/embedded-content/META.yml": [
|
||||
[]
|
||||
],
|
||||
|
@ -273129,6 +273138,9 @@
|
|||
"html/the-xhtml-syntax/parsing-xhtml-documents/data-xhtml-with-dtd-ref.html": [
|
||||
[]
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/support/entities.json": [
|
||||
[]
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/support/xhtml-mathml-dtd-entity.htm": [
|
||||
[]
|
||||
],
|
||||
|
@ -273753,9 +273765,6 @@
|
|||
"infrastructure/metadata/infrastructure/server/wpt-server-websocket.sub.html.ini": [
|
||||
[]
|
||||
],
|
||||
"infrastructure/metadata/infrastructure/testdriver/actions/__dir__.ini": [
|
||||
[]
|
||||
],
|
||||
"infrastructure/metadata/infrastructure/testdriver/actions/actionsWithKeyPressed.html.ini": [
|
||||
[]
|
||||
],
|
||||
|
@ -428439,24 +428448,6 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"webxr/xrDevice_supportsSession_immersive.https.html": [
|
||||
[
|
||||
"webxr/xrDevice_supportsSession_immersive.https.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"webxr/xrDevice_supportsSession_immersive_unsupported.https.html": [
|
||||
[
|
||||
"webxr/xrDevice_supportsSession_immersive_unsupported.https.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"webxr/xrDevice_supportsSession_non_immersive.https.html": [
|
||||
[
|
||||
"webxr/xrDevice_supportsSession_non_immersive.https.html",
|
||||
{}
|
||||
]
|
||||
],
|
||||
"webxr/xrFrame_getPose.https.html": [
|
||||
[
|
||||
"webxr/xrFrame_getPose.https.html",
|
||||
|
@ -462390,7 +462381,7 @@
|
|||
"support"
|
||||
],
|
||||
"animation-worklet/scroll-timeline-writing-modes.https.html": [
|
||||
"189bb9f091665718c11be01779ad0390fe0f7437",
|
||||
"eb8e6fdb948d0996e80ede3a206ee61abd47f0ea",
|
||||
"testharness"
|
||||
],
|
||||
"animation-worklet/stateful-animator.https.html": [
|
||||
|
@ -464714,7 +464705,7 @@
|
|||
"support"
|
||||
],
|
||||
"beacon/META.yml": [
|
||||
"94fa75c5178a39d519807ddc2490900d41acae41",
|
||||
"4bd94e32064c78553666424e1d0ee30bca4987fb",
|
||||
"support"
|
||||
],
|
||||
"beacon/beacon-basic-blob.html": [
|
||||
|
@ -465942,7 +465933,7 @@
|
|||
"support"
|
||||
],
|
||||
"common/README.md": [
|
||||
"bbb651d4aff5689628a713e1ae904ee56c03a6e2",
|
||||
"9aef19cb73fa10c2962c489f43a4517e7f215116",
|
||||
"support"
|
||||
],
|
||||
"common/arrays.js": [
|
||||
|
@ -465993,10 +465984,6 @@
|
|||
"6805c323df5a975231648b830e33ce183c3cbbd3",
|
||||
"support"
|
||||
],
|
||||
"common/css-red.txt": [
|
||||
"9ef04cbd12daf19dd8810cae8844bd22f3264926",
|
||||
"support"
|
||||
],
|
||||
"common/domain-setter.sub.html": [
|
||||
"ad3b9f8b80847ff811aa8f3083dc9c5fcf221f05",
|
||||
"support"
|
||||
|
@ -466013,10 +466000,6 @@
|
|||
"2ee403645b1bb27cdb27bcea716e166729b81af8",
|
||||
"support"
|
||||
],
|
||||
"common/entities.json": [
|
||||
"8a1f590a6abe4872d3b8b4c665d9b165d7dce84d",
|
||||
"support"
|
||||
],
|
||||
"common/form-submission.py": [
|
||||
"467875453c9dc64aac51add3f4a617d941820972",
|
||||
"support"
|
||||
|
@ -562550,7 +562533,7 @@
|
|||
"support"
|
||||
],
|
||||
"css/css-flexbox/scrollbars-auto-ref.html": [
|
||||
"e83ba524eac185ef122e0e05a336d9a8c43089c5",
|
||||
"590b533d8d25ac45dbeb1e7eab7cd02f3c1e8b5b",
|
||||
"support"
|
||||
],
|
||||
"css/css-flexbox/scrollbars-auto.html": [
|
||||
|
@ -562558,7 +562541,7 @@
|
|||
"reftest"
|
||||
],
|
||||
"css/css-flexbox/scrollbars-ref.html": [
|
||||
"32bb6105f19009e11e95b7cee86659125917516f",
|
||||
"911e7acba88333d4e2ddf0d0fec36fbcc4975825",
|
||||
"support"
|
||||
],
|
||||
"css/css-flexbox/scrollbars.html": [
|
||||
|
@ -580922,11 +580905,11 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-position/position-sticky-writing-modes-ref.html": [
|
||||
"39800866a18323a5bf89e7208889184f191571bd",
|
||||
"b9771acf248e1cfaad4ff93c59f63811ee3f6abb",
|
||||
"support"
|
||||
],
|
||||
"css/css-position/position-sticky-writing-modes.html": [
|
||||
"ee2dbc05a9cfca121596f6694f74f6fc76f748a0",
|
||||
"da27f50c7fba29d40d408240369da6947d0b9b0c",
|
||||
"reftest"
|
||||
],
|
||||
"css/css-position/resources/sticky-util.js": [
|
||||
|
@ -585434,7 +585417,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-margin-001.html": [
|
||||
"39dea7efe81eeeb728d8e14ad7557dcf40eb82df",
|
||||
"28eca1a6bafc39408d1c623a0b2625cd4da1478b",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-margin-002.html": [
|
||||
|
@ -585474,11 +585457,11 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-circle-004.html": [
|
||||
"01f3fc1bffe24359bca75121ebde97c7fd5d9376",
|
||||
"289861ee1502f00a5afa8fb6aafd47c5dc9afd6a",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-circle-005.html": [
|
||||
"7d90318ec7365a119ad639b936b4127843ae6203",
|
||||
"46cae045c5d0c8f092d15a194b91e4384146a32e",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-circle-006.html": [
|
||||
|
@ -585530,11 +585513,11 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-ellipse-004.html": [
|
||||
"7617a34bce0c7f90668141a480b487c534a96eed",
|
||||
"1d4aa85a07c304c320ae44a3364d4e7248a3ea26",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-ellipse-005.html": [
|
||||
"fe5af3b682c8cd60e3e10278af3aa53ed108d6ba",
|
||||
"5acb994191258c4b8ec02d70309da76cbbc7fc52",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-ellipse-006.html": [
|
||||
|
@ -585578,7 +585561,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-inset-003.html": [
|
||||
"9b420707fe2e292ddec8810f4c185aaa574b3b5b",
|
||||
"3ffc2af981672a7ac018eefb20eb5b750644c609",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-inset-004.html": [
|
||||
|
@ -585622,7 +585605,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-polygon-004.html": [
|
||||
"c9623a2e5bd4f218c1b43a4679cb817a647c77c4",
|
||||
"e9ecf2df599b0258329d5af6a3c09ee8368f1222",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-polygon-005.html": [
|
||||
|
@ -585634,7 +585617,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-shape-arguments-000.html": [
|
||||
"02d5bc78d9a509bec3d77a90b4736ad7376ddf12",
|
||||
"08d5d471de6b93b4446673f9931a976bcbcf1ce8",
|
||||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/shape-outside-shape-arguments-001.html": [
|
||||
|
@ -585662,7 +585645,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/css-shapes/shape-outside/values/support/parsing-utils.js": [
|
||||
"118a11453337731f380063b736380c2c8610ae81",
|
||||
"abadbf7066695ad1f754540c9bac75b2809c8c4c",
|
||||
"support"
|
||||
],
|
||||
"css/css-shapes/spec-examples/reference/shape-outside-001-ref.html": [
|
||||
|
@ -612990,11 +612973,11 @@
|
|||
"testharness"
|
||||
],
|
||||
"css/cssom-view/scrollIntoView-vertical-rl-writing-mode.html": [
|
||||
"cec27f412c926ab087f2cd736e4c6a7d4efb4c99",
|
||||
"dc5f3e2cdb2fa6c4b0c59ded80b7e19df2db274c",
|
||||
"testharness"
|
||||
],
|
||||
"css/cssom-view/scrollLeft-of-scroller-with-wider-scrollbar.html": [
|
||||
"062edaf8f2dbe99012483f5a10bbf9c2e98fccac",
|
||||
"e308c7c004f8415a5bf1ee886b681fb84780717c",
|
||||
"testharness"
|
||||
],
|
||||
"css/cssom-view/scrollLeftTop.html": [
|
||||
|
@ -614625,6 +614608,10 @@
|
|||
"acb811bfad154e5a0b18eaddb799fc5dc679b114",
|
||||
"testharness"
|
||||
],
|
||||
"css/filter-effects/morphology-mirrored.html": [
|
||||
"f0338e180344f341db60ab0710bdcdb71e8853b7",
|
||||
"reftest"
|
||||
],
|
||||
"css/filter-effects/parsing/backdrop-filter-computed.html": [
|
||||
"5e8ce6bae680c84ef49e882309a573113ffc7b1e",
|
||||
"testharness"
|
||||
|
@ -637030,7 +637017,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"hr-time/META.yml": [
|
||||
"2be354920aa140a72bc62ea2273f5d975eab8d46",
|
||||
"779d5b4af08428c45023fc9d519ab0830d866a87",
|
||||
"support"
|
||||
],
|
||||
"hr-time/basic.any.js": [
|
||||
|
@ -647466,7 +647453,7 @@
|
|||
"reftest"
|
||||
],
|
||||
"html/semantics/document-metadata/the-style-element/style-error-01.html": [
|
||||
"87cb9fafd847f0f60571a85603c2772e152cc949",
|
||||
"0bdef0e17588cf6d2f95a2a14784f2ac26ad1c43",
|
||||
"testharness"
|
||||
],
|
||||
"html/semantics/document-metadata/the-style-element/style_disabled.html": [
|
||||
|
@ -647501,6 +647488,10 @@
|
|||
"a19b3c86d7542f3b65e81836a94914a8ae7cffa8",
|
||||
"testharness"
|
||||
],
|
||||
"html/semantics/document-metadata/the-style-element/support/css-red.txt": [
|
||||
"9ef04cbd12daf19dd8810cae8844bd22f3264926",
|
||||
"support"
|
||||
],
|
||||
"html/semantics/document-metadata/the-title-element/title.text-01.html": [
|
||||
"7f25400ea89ca7835b72fdb1eb21fcb220f2cd01",
|
||||
"testharness"
|
||||
|
@ -655509,8 +655500,12 @@
|
|||
"fd29905ea30ed987c8d634c7f6df2e9e5e517e96",
|
||||
"reftest"
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/support/entities.json": [
|
||||
"8a1f590a6abe4872d3b8b4c665d9b165d7dce84d",
|
||||
"support"
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/support/xhtml-mathml-dtd-entity.htm": [
|
||||
"761655094599be5451e231b30c81241550bee3a5",
|
||||
"af3fe90284f213961679d1996d17766ccfc30621",
|
||||
"support"
|
||||
],
|
||||
"html/the-xhtml-syntax/parsing-xhtml-documents/xhtml-mathml-dtd-entity-1.htm": [
|
||||
|
@ -657729,10 +657724,6 @@
|
|||
"2cc364b610987ad5938c822287eb76079c2af2a3",
|
||||
"support"
|
||||
],
|
||||
"infrastructure/metadata/infrastructure/testdriver/actions/__dir__.ini": [
|
||||
"2bac0b50db727ddc70b90ac3fb443954319723ef",
|
||||
"support"
|
||||
],
|
||||
"infrastructure/metadata/infrastructure/testdriver/actions/actionsWithKeyPressed.html.ini": [
|
||||
"b9465c066c7657a1ea00e316dddf1b7aaa854ef3",
|
||||
"support"
|
||||
|
@ -664582,7 +664573,7 @@
|
|||
"support"
|
||||
],
|
||||
"navigation-timing/META.yml": [
|
||||
"c09a6e03fd19f5a405b391c2c4671df6ff04edf1",
|
||||
"bfb0e0f1f67a9c6aa2e7e921b09e85f8d970b290",
|
||||
"support"
|
||||
],
|
||||
"navigation-timing/buffered-flag.window.js": [
|
||||
|
@ -671690,7 +671681,7 @@
|
|||
"support"
|
||||
],
|
||||
"page-visibility/META.yml": [
|
||||
"509936c371b7de3e7e0e5f7e41d10cffba9f5d2a",
|
||||
"9b9aea8e8b11bf98dd23c8e161e3a7d701da2aba",
|
||||
"support"
|
||||
],
|
||||
"page-visibility/idlharness.window.js": [
|
||||
|
@ -672362,7 +672353,7 @@
|
|||
"manual"
|
||||
],
|
||||
"performance-timeline/META.yml": [
|
||||
"46f16ae5f31aa388cfd1f7ff759a5df44d17fd0a",
|
||||
"89fae1db0d9b7afd202737e34754b4e893298d49",
|
||||
"support"
|
||||
],
|
||||
"performance-timeline/buffered-flag-after-timeout.any.js": [
|
||||
|
@ -686326,7 +686317,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"resource-timing/META.yml": [
|
||||
"76176970d4d93e6a66bf2bc62aec5dd62ccd12c1",
|
||||
"662c42cb664219dee159fd248e1446c041a4bc93",
|
||||
"support"
|
||||
],
|
||||
"resource-timing/SyntheticResponse.py": [
|
||||
|
@ -687558,7 +687549,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"scroll-animations/current-time-writing-modes.html": [
|
||||
"89b78fcccfe4e18b79d1f0f63eac90606fc81703",
|
||||
"083c4cf594d80bf331b6c4243b9e2e32af46f531",
|
||||
"testharness"
|
||||
],
|
||||
"scroll-animations/current-time.html": [
|
||||
|
@ -697698,7 +697689,7 @@
|
|||
"support"
|
||||
],
|
||||
"timing-entrytypes-registry/META.yml": [
|
||||
"c09a6e03fd19f5a405b391c2c4671df6ff04edf1",
|
||||
"bfb0e0f1f67a9c6aa2e7e921b09e85f8d970b290",
|
||||
"support"
|
||||
],
|
||||
"timing-entrytypes-registry/registry.any.js": [
|
||||
|
@ -697862,7 +697853,7 @@
|
|||
"support"
|
||||
],
|
||||
"tools/ci/manifest_build.py": [
|
||||
"ade17d6be40d80751de12b0d462a8f531bbe9059",
|
||||
"6400bfd5e4837f44599310127baf6d0905df3416",
|
||||
"support"
|
||||
],
|
||||
"tools/ci/run_tc.py": [
|
||||
|
@ -703010,11 +703001,11 @@
|
|||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/browsers/firefox.py": [
|
||||
"1763ff44b4e55c14c8f5d753defb3ba39e017262",
|
||||
"781d7e31c43c01c0a33328e1dc921f4f536d5296",
|
||||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/browsers/firefox_android.py": [
|
||||
"30e53a593cff7ec3fa026c2a4f2495402650c1dc",
|
||||
"30d0825a8ca373d4cd902bbe54966b32be66f22f",
|
||||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/browsers/ie.py": [
|
||||
|
@ -703402,7 +703393,7 @@
|
|||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/wpttest.py": [
|
||||
"2ce15a0d9c7f85339caadecc017f178ee0245d27",
|
||||
"80db17a3c7284cd82145a3d20c3532a0e79c82a4",
|
||||
"support"
|
||||
],
|
||||
"tools/wptserve/.gitignore": [
|
||||
|
@ -707474,7 +707465,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"user-timing/META.yml": [
|
||||
"a97a31d766bd96f0030a047632c3342c70abf3d8",
|
||||
"5cb2a789c09c89b7c1029551e646b3f240e80c2a",
|
||||
"support"
|
||||
],
|
||||
"user-timing/buffered-flag.any.js": [
|
||||
|
@ -709766,7 +709757,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"web-share/share-sharePromise-internal-slot.https.html": [
|
||||
"5a71eaa4abf359008d84d1f219083ec1a91a6458",
|
||||
"1478158a0c4efe365ae4a471f905d82a7b1fff8d",
|
||||
"testharness"
|
||||
],
|
||||
"web-share/share-simple-manual.https.html": [
|
||||
|
@ -717885,18 +717876,6 @@
|
|||
"9fa8c31d63aab6f74886b55596ff63911018f51e",
|
||||
"testharness"
|
||||
],
|
||||
"webxr/xrDevice_supportsSession_immersive.https.html": [
|
||||
"fd0827a526ef01299eeccd94f93f131e4014cd7b",
|
||||
"testharness"
|
||||
],
|
||||
"webxr/xrDevice_supportsSession_immersive_unsupported.https.html": [
|
||||
"1d63a2b1c3a254d999473bc507453095c4243a08",
|
||||
"testharness"
|
||||
],
|
||||
"webxr/xrDevice_supportsSession_non_immersive.https.html": [
|
||||
"b376495d765106fcb1435c3e60c0fa6e167d9c71",
|
||||
"testharness"
|
||||
],
|
||||
"webxr/xrFrame_getPose.https.html": [
|
||||
"71ca78abb48cf12cb41e8249289a06eddc7eae94",
|
||||
"testharness"
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
[matchMedia-display-none-iframe.html]
|
||||
expected: ERROR
|
|
@ -2,3 +2,6 @@
|
|||
[Test the maxium value of scrollLeft]
|
||||
expected: FAIL
|
||||
|
||||
[Test the maxmium value of scrollLeft]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,2 @@
|
|||
[morphology-mirrored.html]
|
||||
expected: FAIL
|
|
@ -315,12 +315,6 @@
|
|||
[<iframe>: separate response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -330,6 +324,12 @@
|
|||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain */*;charset=gbk]
|
||||
[<iframe>: combined response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined 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;charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
[traverse_the_history_5.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -1,5 +1,24 @@
|
|||
[open-features-negative-innerwidth-innerheight.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: negative values for legacy `innerwidth`, `innerheight`]
|
||||
expected: FAIL
|
||||
|
||||
[features "innerheight=-404.5" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=-404.5" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=-404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=-404e1" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=-404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=-404e1" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,24 @@
|
|||
[open-features-negative-screenx-screeny.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: negative values for legacy `screenx`, `screeny`]
|
||||
expected: FAIL
|
||||
|
||||
[features "screenx=-204" should NOT set "left=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=-204" should NOT set "top=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=-204.5" should NOT set "top=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=-0" should NOT set "top=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=-0" should NOT set "left=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=-204.5" should NOT set "left=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,24 @@
|
|||
[open-features-negative-top-left.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: negative values for `top`, `left`]
|
||||
expected: FAIL
|
||||
|
||||
[features "top=-204" should NOT set "top=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=-204.5" should NOT set "top=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=-204" should NOT set "left=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=-0" should NOT set "top=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=-204.5" should NOT set "left=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=-0" should NOT set "left=204"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,24 @@
|
|||
[open-features-negative-width-height.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: negative values for `width`, `height`]
|
||||
expected: FAIL
|
||||
|
||||
[features "height=-404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=-404e1" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=-404.5" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=-404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=-404e1" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=-404.5" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,48 @@
|
|||
[open-features-non-integer-height.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for feature `height`]
|
||||
expected: FAIL
|
||||
|
||||
[features "height=405*3" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405.32" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405e1" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405/5" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405^4" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405.5" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405e-1" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405 " should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=405LLl" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=/404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[top=0,left=0,width=401,: absence of feature "height" should be treated same as "height=0"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[top=0,left=0: absence of feature "height" should be treated same as "height=0"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=_404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "height=L404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,42 @@
|
|||
[open-features-non-integer-innerheight.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for legacy feature `innerheight`]
|
||||
expected: FAIL
|
||||
|
||||
[features "innerheight=405e-1" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405LLl" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405^4" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405e1" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405 " should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405/5" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405.32" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405.5" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=405*3" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=_404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=L404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerheight=/404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,42 @@
|
|||
[open-features-non-integer-innerwidth.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for legacy feature `innerwidth`]
|
||||
expected: FAIL
|
||||
|
||||
[features "innerwidth=405e-1" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405*3" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405.5" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405e1" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405.32" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405 " should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405LLl" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405/5" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=405^4" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=/404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=_404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "innerwidth=L404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,42 @@
|
|||
[open-features-non-integer-left.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for feature `left`]
|
||||
expected: FAIL
|
||||
|
||||
[features "left=105e1" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105 " should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105/5" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105e-1" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105^4" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105LLl" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105.32" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105*3" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=105.5" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=L104" should NOT set "left=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=/104" should NOT set "left=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "left=_104" should NOT set "left=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,42 @@
|
|||
[open-features-non-integer-screenx.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for legacy feature `screenx`]
|
||||
expected: FAIL
|
||||
|
||||
[features "screenx=105.5" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105e1" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105 " should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105*3" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105e-1" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105^4" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105LLl" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105/5" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=105.32" should set "left=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=_104" should NOT set "left=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=L104" should NOT set "left=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screenx=/104" should NOT set "left=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,42 @@
|
|||
[open-features-non-integer-screeny.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for legacy feature `screeny`]
|
||||
expected: FAIL
|
||||
|
||||
[features "screeny=405^4" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405e-1" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405LLl" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405e1" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405 " should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405/5" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405*3" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405.32" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=405.5" should set "height=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=_404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=L404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "screeny=/404" should NOT set "height=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,42 @@
|
|||
[open-features-non-integer-top.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for feature `top`]
|
||||
expected: FAIL
|
||||
|
||||
[features "top=105/5" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105*3" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105LLl" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105e-1" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105.32" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105e1" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105 " should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105^4" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=105.5" should set "top=105"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=/104" should NOT set "top=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=_104" should NOT set "top=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "top=L104" should NOT set "top=104"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,32 +1,48 @@
|
|||
[open-features-non-integer-width.html]
|
||||
type: testharness
|
||||
expected: TIMEOUT
|
||||
[HTML: window.open `features`: non-integer values for feature `width`]
|
||||
expected: FAIL
|
||||
|
||||
[features "width=405^4" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405.5" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405e1" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405 " should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405.32" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405LLl" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405*3" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405e-1" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=405/5" should set "width=405"]
|
||||
expected: FAIL
|
||||
expected: TIMEOUT
|
||||
|
||||
[top=0,left=0: absence of feature "width" should be treated same as "width=0"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=_404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[top=0,left=0,height=401,: absence of feature "width" should be treated same as "width=0"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=/404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
[features "width=L404" should NOT set "width=404"]
|
||||
expected: TIMEOUT
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[embedded-opener-remove-frame.html]
|
||||
expected: CRASH
|
||||
[opener and "removed" embedded documents]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
[skip-document-with-fragment.html]
|
||||
expected: TIMEOUT
|
||||
[Autofocus elements in top-level browsing context's documents with URI fragments should be skipped.]
|
||||
expected: TIMEOUT
|
||||
|
||||
[Autofocus elements in iframed documents with URL fragments should be skipped.]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,10 +0,0 @@
|
|||
[non-active-document.html]
|
||||
[DOMParser]
|
||||
expected: FAIL
|
||||
|
||||
[createHTMLDocument]
|
||||
expected: FAIL
|
||||
|
||||
[<template>]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,4 @@
|
|||
[077.html]
|
||||
[ adding several types of scripts through the DOM and removing some of them confuses scheduler ]
|
||||
expected: FAIL
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
[nested-context-navigations-iframe.html]
|
||||
expected: CRASH
|
||||
expected: TIMEOUT
|
||||
[Test that iframe navigations are not observable by the parent, even after history navigations by the parent]
|
||||
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,4 +0,0 @@
|
|||
[xrDevice_supportsSession_immersive_unsupported.https.html]
|
||||
[supportsSession rejects when options not supported]
|
||||
expected: FAIL
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
[transition_calc_implicit.html]
|
||||
expected: TIMEOUT
|
|
@ -108,11 +108,11 @@ function block_vertical_rl(t) {
|
|||
const elements = createTestDOM(true, 'vertical-rl', 'ltr');
|
||||
const animation = createAndPlayTestAnimation(elements, 'block');
|
||||
|
||||
// Move the scroller to the 75% point. Since it is vertical-rl, this is
|
||||
// equivalent to the 25% point for the ScrollTimeline.
|
||||
// Move the scroller to the left 25% point, since it is vertical-rl,
|
||||
// i.e leftwards overflow direction, scrollLeft is -25% point.
|
||||
const maxScroll =
|
||||
elements.scroller.scrollWidth - elements.scroller.clientWidth;
|
||||
elements.scroller.scrollLeft = 0.75 * maxScroll;
|
||||
elements.scroller.scrollLeft = -0.25 * maxScroll;
|
||||
|
||||
waitForNotNullLocalTime(animation).then(t.step_func_done(() => {
|
||||
assert_equals(
|
||||
|
@ -124,11 +124,11 @@ function inline_horizontal_tb_rtl(t) {
|
|||
const elements = createTestDOM(true, 'horizontal-tb', 'rtl');
|
||||
const animation = createAndPlayTestAnimation(elements, 'inline');
|
||||
|
||||
// Move the scroller to the 75% point. Since it is direction: rtl, this is
|
||||
// equivalent to the 25% point for the ScrollTimeline.
|
||||
// Move the scroller to the left 25% point, since it is direction: rtl,
|
||||
// i.e leftwards overflow direction, scrollLeft is -25% point.
|
||||
const maxScroll =
|
||||
elements.scroller.scrollWidth - elements.scroller.clientWidth;
|
||||
elements.scroller.scrollLeft = 0.75 * maxScroll;
|
||||
elements.scroller.scrollLeft = -0.25 * maxScroll;
|
||||
|
||||
waitForNotNullLocalTime(animation).then(t.step_func_done(() => {
|
||||
assert_equals(
|
||||
|
@ -155,11 +155,11 @@ function inline_vertical_writing_mode_rtl(t) {
|
|||
const elements = createTestDOM(false, 'vertical-lr', 'rtl');
|
||||
const animation = createAndPlayTestAnimation(elements, 'inline');
|
||||
|
||||
// Move the scroller to the 75% point. Since this is a vertical writing mode
|
||||
// and direction: rtl, this is 25% of the ScrollTimeline currentTime.
|
||||
// Move the scroller to the top 25% point, since it is a vertical-lr writing mode
|
||||
// and direction: rtl, i.e upwards overflow direction, scrollTop is -25% point.
|
||||
const maxScroll =
|
||||
elements.scroller.scrollHeight - elements.scroller.clientHeight;
|
||||
elements.scroller.scrollTop = 0.75 * maxScroll;
|
||||
elements.scroller.scrollTop = -0.25 * maxScroll;
|
||||
|
||||
waitForNotNullLocalTime(animation).then(t.step_func_done(() => {
|
||||
assert_equals(
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
spec: https://w3c.github.io/beacon/
|
||||
suggested_reviewers:
|
||||
- toddreifsteck
|
||||
- igrigorik
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
The files in this directory are non-infrastructure support files that can be used by tests.
|
||||
|
||||
* `blank.html` - An empty HTML document.
|
||||
* `css-red.txt` - A text/plain "CSS" document.
|
||||
* `domain-setter.sub.html` - An HTML document that sets `document.domain`.
|
||||
* `dummy.xhtml` - An XHTML document.
|
||||
* `dummy.xml` - An XML document.
|
||||
* `entities.json` - All named character references in HTML.
|
||||
* `text-plain.txt` - A text/plain document.
|
||||
* `*.js` - Utility scripts. These are documented in the source.
|
||||
* `*.py` - wptserve [Python Handlers](https://web-platform-tests.org/writing-tests/python-handlers/). These are documented in the source.
|
||||
|
|
|
@ -166,8 +166,8 @@ for (var i = 0; i < nodes.length; i++) {
|
|||
}
|
||||
nodes = document.querySelectorAll(".rtl > .row-reverse");
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
nodes[i].scrollLeft = 0;
|
||||
nodes[i].scrollTop = 0;
|
||||
nodes[i].scrollLeft = -10000;
|
||||
nodes[i].scrollTop = -10000;
|
||||
}
|
||||
nodes = document.querySelectorAll(".column-reverse");
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
|
@ -176,7 +176,7 @@ for (var i = 0; i < nodes.length; i++) {
|
|||
}
|
||||
nodes = document.querySelectorAll(".flipped-blocks > .column-reverse");
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
nodes[i].scrollLeft = 0;
|
||||
nodes[i].scrollLeft = -10000;
|
||||
nodes[i].scrollTop = 0;
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -166,8 +166,8 @@ for (var i = 0; i < nodes.length; i++) {
|
|||
}
|
||||
nodes = document.querySelectorAll(".rtl > .row-reverse");
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
nodes[i].scrollLeft = 0;
|
||||
nodes[i].scrollTop = 0;
|
||||
nodes[i].scrollLeft = -10000;
|
||||
nodes[i].scrollTop = -10000;
|
||||
}
|
||||
nodes = document.querySelectorAll(".column-reverse");
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
|
@ -176,7 +176,7 @@ for (var i = 0; i < nodes.length; i++) {
|
|||
}
|
||||
nodes = document.querySelectorAll(".flipped-blocks > .column-reverse");
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
nodes[i].scrollLeft = 0;
|
||||
nodes[i].scrollLeft = -10000;
|
||||
nodes[i].scrollTop = 0;
|
||||
}
|
||||
</script>
|
||||
|
|
|
@ -35,7 +35,7 @@ window.addEventListener('load', function() {
|
|||
document.getElementById('scroller1').scrollTop = 50;
|
||||
document.getElementById('scroller1').scrollLeft = 20;
|
||||
document.getElementById('scroller2').scrollTop = 50;
|
||||
document.getElementById('scroller2').scrollLeft = 60;
|
||||
document.getElementById('scroller2').scrollLeft = -25;
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
|
@ -44,7 +44,7 @@ window.addEventListener('load', function() {
|
|||
document.getElementById('scroller1').scrollTop = 50;
|
||||
document.getElementById('scroller1').scrollLeft = 20;
|
||||
document.getElementById('scroller2').scrollTop = 50;
|
||||
document.getElementById('scroller2').scrollLeft = 60;
|
||||
document.getElementById('scroller2').scrollLeft = -25;
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
|
@ -10,10 +10,12 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<script type="text/javascript">
|
||||
setup({explicit_done: true});
|
||||
var shape_margin_valid_unit_tests = [];
|
||||
ParsingUtils.validUnits.forEach(function(unit) {
|
||||
test = "10"+unit;
|
||||
|
@ -25,10 +27,16 @@
|
|||
testCase["expected_computed"] = test;
|
||||
shape_margin_valid_unit_tests.push(testCase);
|
||||
});
|
||||
|
||||
generate_tests( ParsingUtils.testShapeMarginInlineStyle,
|
||||
ParsingUtils.buildTestCases(shape_margin_valid_unit_tests, "inline"), true);
|
||||
generate_tests( ParsingUtils.testShapeMarginComputedStyle,
|
||||
ParsingUtils.buildTestCases(shape_margin_valid_unit_tests, "computed"), true);
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
generate_tests( ParsingUtils.testShapeMarginComputedStyle,
|
||||
ParsingUtils.buildTestCases(shape_margin_valid_unit_tests, "computed"), true);
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -13,14 +13,21 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<script type="text/javascript">
|
||||
setup({explicit_done: true});
|
||||
generate_tests( ParsingUtils.testInlineStyle,
|
||||
ParsingUtils.buildPositionTests("circle", true, 'lengthUnit + inline', ParsingUtils.validUnits) );
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildPositionTests("circle", true, 'lengthUnit + computed', ParsingUtils.validUnits) );
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildPositionTests("circle", true, 'lengthUnit + computed', ParsingUtils.validUnits) );
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -12,12 +12,19 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<script type="text/javascript">
|
||||
setup({explicit_done: true});
|
||||
generate_tests(ParsingUtils.testInlineStyle, ParsingUtils.buildRadiiTests('circle', 'lengthUnit + inline', ParsingUtils.validUnits));
|
||||
generate_tests(ParsingUtils.testComputedStyle, ParsingUtils.buildRadiiTests('circle', 'lengthUnit + computed', ParsingUtils.validUnits));
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
generate_tests(ParsingUtils.testComputedStyle, ParsingUtils.buildRadiiTests('circle', 'lengthUnit + computed', ParsingUtils.validUnits));
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -13,14 +13,21 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<script type="text/javascript">
|
||||
setup({explicit_done: true});
|
||||
generate_tests( ParsingUtils.testInlineStyle,
|
||||
ParsingUtils.buildPositionTests("ellipse", true, 'lengthUnit + inline', ParsingUtils.validUnits) );
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildPositionTests("ellipse", true, 'lengthUnit + computed', ParsingUtils.validUnits) );
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildPositionTests("ellipse", true, 'lengthUnit + computed', ParsingUtils.validUnits) );
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -12,12 +12,20 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<script type="text/javascript">
|
||||
setup({explicit_done: true});
|
||||
generate_tests(ParsingUtils.testInlineStyle, ParsingUtils.buildRadiiTests('ellipse', 'lengthUnit + inline', ParsingUtils.validUnits));
|
||||
generate_tests(ParsingUtils.testComputedStyle, ParsingUtils.buildRadiiTests('ellipse', 'lengthUnit + computed', ParsingUtils.validUnits));
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
generate_tests(ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildRadiiTests('ellipse', 'lengthUnit + computed', ParsingUtils.validUnits));
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -13,15 +13,22 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<script type="text/javascript">
|
||||
setup({explicit_done: true});
|
||||
ParsingUtils.validUnits.forEach(function(unit) {
|
||||
generate_tests(ParsingUtils.testInlineStyle, ParsingUtils.generateInsetRoundCases(unit, 'inline'));
|
||||
});
|
||||
ParsingUtils.validUnits.forEach(function(unit) {
|
||||
generate_tests(ParsingUtils.testComputedStyle, ParsingUtils.generateInsetRoundCases(unit, 'computed'));
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
ParsingUtils.validUnits.forEach(function(unit) {
|
||||
generate_tests(ParsingUtils.testComputedStyle, ParsingUtils.generateInsetRoundCases(unit, 'computed'));
|
||||
});
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
|
|
|
@ -13,10 +13,12 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
<script type="text/javascript">
|
||||
setup({explicit_done: true});
|
||||
var arg_length_units_tests = [
|
||||
['%', 'px', 'px'],
|
||||
['px', '%', 'px'],
|
||||
|
@ -31,8 +33,13 @@
|
|||
];
|
||||
generate_tests( ParsingUtils.testInlineStyle,
|
||||
ParsingUtils.buildPolygonTests(arg_length_units_tests, 'inline') );
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildPolygonTests(arg_length_units_tests, 'computed') );
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildPolygonTests(arg_length_units_tests, 'computed') );
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
<script src="/resources/testharness.js"></script>
|
||||
<script src="/resources/testharnessreport.js"></script>
|
||||
<script src="support/parsing-utils.js"></script>
|
||||
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="log"></div>
|
||||
|
@ -21,6 +22,7 @@
|
|||
// fixed units: cm, mm, in, px, pt, pc
|
||||
// percentage unit: %
|
||||
// zero length: 0
|
||||
setup({explicit_done: true});
|
||||
var basic_shape_args_tests = [
|
||||
{
|
||||
"name": "0-valued",
|
||||
|
@ -53,10 +55,17 @@
|
|||
"expected_computed": "polygon(1% 2%)"
|
||||
}
|
||||
];
|
||||
|
||||
generate_tests( ParsingUtils.testInlineStyle,
|
||||
ParsingUtils.buildTestCases(basic_shape_args_tests, "inline") );
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildTestCases(basic_shape_args_tests, "computed") );
|
||||
ParsingUtils.setupFonts();
|
||||
document.fonts.ready.then(()=> {
|
||||
generate_tests( ParsingUtils.testComputedStyle,
|
||||
ParsingUtils.buildTestCases(basic_shape_args_tests, "computed") );
|
||||
ParsingUtils.restoreFonts();
|
||||
done();
|
||||
});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -446,31 +446,32 @@ function each(object, func) {
|
|||
}
|
||||
}
|
||||
|
||||
function setupFonts(func) {
|
||||
return function () {
|
||||
var fontProperties = {
|
||||
'font-family': 'Ahem',
|
||||
'font-size': '16px',
|
||||
'line-height': '1'
|
||||
};
|
||||
var savedValues = { };
|
||||
each(fontProperties, function (key, value) {
|
||||
savedValues[key] = document.body.style.getPropertyValue(key);
|
||||
document.body.style.setProperty(key, value);
|
||||
});
|
||||
try {
|
||||
func.apply(this, arguments);
|
||||
} finally {
|
||||
each(savedValues, function (key, value) {
|
||||
if (value) {
|
||||
document.body.style.setProperty(key, value);
|
||||
}
|
||||
else {
|
||||
document.body.style.removeProperty(key);
|
||||
}
|
||||
});
|
||||
}
|
||||
/// For saving and restoring font properties
|
||||
var savedFontValues = { };
|
||||
|
||||
function setupFonts() {
|
||||
var fontProperties = {
|
||||
'font-family': 'Ahem',
|
||||
'font-size': '16px',
|
||||
'line-height': '1'
|
||||
};
|
||||
savedFontValues = { };
|
||||
each(fontProperties, function (key, value) {
|
||||
savedFontValues[key] = document.body.style.getPropertyValue(key);
|
||||
document.body.style.setProperty(key, value);
|
||||
});
|
||||
}
|
||||
|
||||
function restoreFonts() {
|
||||
each(savedFontValues, function (key, value) {
|
||||
if (value) {
|
||||
document.body.style.setProperty(key, value);
|
||||
}
|
||||
else {
|
||||
document.body.style.removeProperty(key);
|
||||
}
|
||||
});
|
||||
savedFontValues = { };
|
||||
}
|
||||
|
||||
var validUnits = [
|
||||
|
@ -819,11 +820,11 @@ var calcTestValues = [
|
|||
|
||||
return {
|
||||
testInlineStyle: testInlineStyle,
|
||||
testComputedStyle: setupFonts(testComputedStyle),
|
||||
testComputedStyle: testComputedStyle,
|
||||
testShapeMarginInlineStyle: testShapeMarginInlineStyle,
|
||||
testShapeMarginComputedStyle: setupFonts(testShapeMarginComputedStyle),
|
||||
testShapeMarginComputedStyle: testShapeMarginComputedStyle,
|
||||
testShapeThresholdInlineStyle: testShapeThresholdInlineStyle,
|
||||
testShapeThresholdComputedStyle: setupFonts(testShapeThresholdComputedStyle),
|
||||
testShapeThresholdComputedStyle: testShapeThresholdComputedStyle,
|
||||
buildTestCases: buildTestCases,
|
||||
buildRadiiTests: buildRadiiTests,
|
||||
buildPositionTests: buildPositionTests,
|
||||
|
@ -834,6 +835,7 @@ return {
|
|||
validUnits: validUnits,
|
||||
calcTestValues: calcTestValues,
|
||||
roundResultStr: roundResultStr,
|
||||
setupFonts: setupFonts
|
||||
setupFonts: setupFonts,
|
||||
restoreFonts: restoreFonts,
|
||||
}
|
||||
})();
|
||||
|
|
|
@ -92,20 +92,6 @@ var expectedY = {
|
|||
inlineEnd: ((2*box_height) - scroller_height) + scrollbar_width,
|
||||
};
|
||||
|
||||
// As browsers differ in the meaning of scrollLeft when
|
||||
// in a right-to-left mode, we adjust the expectation
|
||||
// to match the semantics of scrollLeft.
|
||||
// In vertical-rl mode, the scroll x coordinate should be nonpositive per the the spec.
|
||||
// But some browsers is nonnegative, so we adjust the expectation.
|
||||
scroller.scrollLeft = -1000;
|
||||
if(scroller.scrollLeft === 0) {
|
||||
expectedX = {
|
||||
blockStart: ((2*box_width) - scroller_width) + scrollbar_width,
|
||||
blockCenter: ((3*box_width - scroller_width)/2) + (scrollbar_width/2),
|
||||
blockEnd: box_width,
|
||||
};
|
||||
}
|
||||
|
||||
[
|
||||
[{block: "start", inline: "start"}, expectedX.blockStart, expectedY.inlineStart],
|
||||
[{block: "start", inline: "center"}, expectedX.blockStart, expectedY.inlineCenter],
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<!DOCTYPE html>
|
||||
<title>The maximum value of scrollLeft shouldn't be affected by scrollbar when it's wider than scroller</title>
|
||||
<title>The maximum value of scrollLeft shouldn't be affected by scrollbar even if it's wider than scroller</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="help" href="https://drafts.csswg.org/cssom-view/#dom-element-scrollleft">
|
||||
|
||||
|
@ -12,5 +12,5 @@
|
|||
test(function() {
|
||||
scroller.scrollLeft = 1000;
|
||||
assert_equals(scroller.scrollLeft, 100);
|
||||
}, "Test the maxium value of scrollLeft");
|
||||
}, "Test the maxmium value of scrollLeft");
|
||||
</script>
|
||||
|
|
|
@ -0,0 +1,15 @@
|
|||
<!DOCTYPE html>
|
||||
<title>feMorphology filter on mirrored content</title>
|
||||
<link rel="help" href="https://drafts.fxtf.org/filter-effects-1/#feMorphologyElement">
|
||||
<link rel="match" href="reference/green-100x100.html">
|
||||
<svg>
|
||||
<filter id="dilate" filterUnits="userSpaceOnUse"
|
||||
color-interpolation-filters="sRGB">
|
||||
<feMorphology operator="dilate" radius="10"/>
|
||||
</filter>
|
||||
<rect width="100" height="100" fill="red"/>
|
||||
<rect x="10" y="10" width="80" height="30" fill="green" filter="url(#dilate)"
|
||||
transform="translate(0, 50) scale(1, -1)"/>
|
||||
<rect x="10" y="60" width="80" height="30" fill="green" filter="url(#dilate)"
|
||||
transform="translate(100, 0) scale(-1, 1)"/>
|
||||
</svg>
|
|
@ -2,4 +2,3 @@ spec: https://w3c.github.io/hr-time/
|
|||
suggested_reviewers:
|
||||
- plehegar
|
||||
- igrigorik
|
||||
- toddreifsteck
|
||||
|
|
|
@ -26,7 +26,7 @@ tText.step(function() {
|
|||
tText.done()
|
||||
})
|
||||
elt.appendChild(
|
||||
document.createTextNode('@import "../../../../common/css-red.txt";'));
|
||||
document.createTextNode('@import "support/css-red.txt";'));
|
||||
document.getElementsByTagName("head")[0].appendChild(elt);
|
||||
})
|
||||
</script>
|
||||
|
|
|
@ -38,7 +38,7 @@
|
|||
|
||||
function run(row) {
|
||||
var xhr = new XMLHttpRequest();
|
||||
xhr.open("GET", "/common/entities.json");
|
||||
xhr.open("GET", "entities.json");
|
||||
xhr.onload = function () {
|
||||
var entitiesJSON = JSON.parse(xhr.response);
|
||||
setupTests(entitiesJSON, row[1], row[2], row[0], row[3]);
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
disabled:
|
||||
if product == "chrome" and os == "mac": https://bugs.chromium.org/p/chromedriver/issues/detail?id=3114
|
|
@ -2,5 +2,4 @@ spec: https://w3c.github.io/navigation-timing/
|
|||
suggested_reviewers:
|
||||
- plehegar
|
||||
- igrigorik
|
||||
- toddreifsteck
|
||||
- yoavweiss
|
||||
|
|
|
@ -2,4 +2,3 @@ spec: https://w3c.github.io/page-visibility/
|
|||
suggested_reviewers:
|
||||
- plehegar
|
||||
- igrigorik
|
||||
- toddreifsteck
|
||||
|
|
|
@ -2,4 +2,3 @@ spec: https://w3c.github.io/performance-timeline/
|
|||
suggested_reviewers:
|
||||
- plehegar
|
||||
- igrigorik
|
||||
- toddreifsteck
|
||||
|
|
|
@ -3,5 +3,4 @@ suggested_reviewers:
|
|||
- plehegar
|
||||
- zqzhang
|
||||
- igrigorik
|
||||
- toddreifsteck
|
||||
- yoavweiss
|
||||
|
|
|
@ -51,7 +51,7 @@ test(function() {
|
|||
// The offset in the inline/horizontal direction should be inverted. The
|
||||
// block/vertical direction should be unaffected.
|
||||
scroller.scrollTop = 50;
|
||||
scroller.scrollLeft = 75;
|
||||
scroller.scrollLeft = 75 - scrollerSize;
|
||||
|
||||
assert_equals(blockScrollTimeline.currentTime, 50, 'Scrolled block timeline');
|
||||
assert_equals(
|
||||
|
@ -105,7 +105,7 @@ test(function() {
|
|||
// horizontal/vertical cases, horizontal starts on the right-hand-side and
|
||||
// vertical is normal.
|
||||
scroller.scrollTop = 50;
|
||||
scroller.scrollLeft = 75;
|
||||
scroller.scrollLeft = 75 - scrollerSize;
|
||||
|
||||
assert_equals(
|
||||
blockScrollTimeline.currentTime, scrollerSize - 75,
|
||||
|
@ -207,36 +207,36 @@ test(function() {
|
|||
assert_equals(
|
||||
calcScrollTimeline.currentTime, null, 'Unscrolled calc-based timeline');
|
||||
|
||||
// With direction rtl offsets are inverted, such that scrollLeft ==
|
||||
// scrollerSize is the 'zero' point for currentTime. However the
|
||||
// With direction rtl offsets are inverted, such that scrollLeft == 0
|
||||
// is the 'zero' point for currentTime. However the
|
||||
// startScrollOffset is an absolute distance along the offset, so doesn't
|
||||
// need adjusting.
|
||||
|
||||
// Check the length-based ScrollTimeline.
|
||||
scroller.scrollLeft = scrollerSize;
|
||||
scroller.scrollLeft = 0;
|
||||
assert_equals(
|
||||
lengthScrollTimeline.currentTime, null,
|
||||
'Length-based timeline before the startScrollOffset point');
|
||||
scroller.scrollLeft = scrollerSize - 20;
|
||||
scroller.scrollLeft = -20;
|
||||
assert_equals(
|
||||
lengthScrollTimeline.currentTime, 0,
|
||||
'Length-based timeline at the startScrollOffset point');
|
||||
scroller.scrollLeft = scrollerSize - 50;
|
||||
scroller.scrollLeft = -50;
|
||||
assert_equals(
|
||||
lengthScrollTimeline.currentTime,
|
||||
calculateCurrentTime(50, 20, scrollerSize, scrollerSize),
|
||||
'Length-based timeline after the startScrollOffset point');
|
||||
|
||||
// Check the percentage-based ScrollTimeline.
|
||||
scroller.scrollLeft = scrollerSize - (0.19 * scrollerSize);
|
||||
scroller.scrollLeft = -(0.19 * scrollerSize);
|
||||
assert_equals(
|
||||
percentageScrollTimeline.currentTime, null,
|
||||
'Percentage-based timeline before the startScrollOffset point');
|
||||
scroller.scrollLeft = scrollerSize - (0.20 * scrollerSize);
|
||||
scroller.scrollLeft = -(0.20 * scrollerSize);
|
||||
assert_equals(
|
||||
percentageScrollTimeline.currentTime, 0,
|
||||
'Percentage-based timeline at the startScrollOffset point');
|
||||
scroller.scrollLeft = scrollerSize - (0.4 * scrollerSize);
|
||||
scroller.scrollLeft = -(0.4 * scrollerSize);
|
||||
assert_equals(
|
||||
percentageScrollTimeline.currentTime,
|
||||
calculateCurrentTime(
|
||||
|
@ -244,15 +244,15 @@ test(function() {
|
|||
'Percentage-based timeline after the startScrollOffset point');
|
||||
|
||||
// Check the calc-based ScrollTimeline.
|
||||
scroller.scrollLeft = scrollerSize - (0.2 * scrollerSize - 10);
|
||||
scroller.scrollLeft = -(0.2 * scrollerSize - 10);
|
||||
assert_equals(
|
||||
calcScrollTimeline.currentTime, null,
|
||||
'Calc-based timeline before the startScrollOffset point');
|
||||
scroller.scrollLeft = scrollerSize - (0.2 * scrollerSize - 5);
|
||||
scroller.scrollLeft = -(0.2 * scrollerSize - 5);
|
||||
assert_equals(
|
||||
calcScrollTimeline.currentTime, 0,
|
||||
'Calc-based timeline at the startScrollOffset point');
|
||||
scroller.scrollLeft = scrollerSize - (0.2 * scrollerSize);
|
||||
scroller.scrollLeft = -(0.2 * scrollerSize);
|
||||
assert_equals(
|
||||
calcScrollTimeline.currentTime,
|
||||
calculateCurrentTime(
|
||||
|
@ -288,21 +288,21 @@ test(function() {
|
|||
endScrollOffset: 'calc(80% + 5px)'
|
||||
});
|
||||
|
||||
// With direction rtl offsets are inverted, such that scrollLeft ==
|
||||
// scrollerSize is the 'zero' point for currentTime. However the
|
||||
// With direction rtl offsets are inverted, such that scrollLeft == 0
|
||||
// is the 'zero' point for currentTime. However the
|
||||
// endScrollOffset is an absolute distance along the offset, so doesn't need
|
||||
// adjusting.
|
||||
|
||||
// Check the length-based ScrollTimeline.
|
||||
scroller.scrollLeft = 0;
|
||||
scroller.scrollLeft = -scrollerSize;
|
||||
assert_equals(
|
||||
lengthScrollTimeline.currentTime, null,
|
||||
'Length-based timeline after the endScrollOffset point');
|
||||
scroller.scrollLeft = 20;
|
||||
scroller.scrollLeft = 20 - scrollerSize;
|
||||
assert_equals(
|
||||
lengthScrollTimeline.currentTime, null,
|
||||
'Length-based timeline at the endScrollOffset point');
|
||||
scroller.scrollLeft = 50;
|
||||
scroller.scrollLeft = 50 - scrollerSize;
|
||||
assert_equals(
|
||||
lengthScrollTimeline.currentTime,
|
||||
calculateCurrentTime(
|
||||
|
@ -310,15 +310,15 @@ test(function() {
|
|||
'Length-based timeline before the endScrollOffset point');
|
||||
|
||||
// Check the percentage-based ScrollTimeline.
|
||||
scroller.scrollLeft = 0.19 * scrollerSize;
|
||||
scroller.scrollLeft = 0.19 * scrollerSize - scrollerSize;
|
||||
assert_equals(
|
||||
percentageScrollTimeline.currentTime, null,
|
||||
'Percentage-based timeline after the endScrollOffset point');
|
||||
scroller.scrollLeft = 0.20 * scrollerSize;
|
||||
scroller.scrollLeft = 0.20 * scrollerSize - scrollerSize;
|
||||
assert_equals(
|
||||
percentageScrollTimeline.currentTime, null,
|
||||
'Percentage-based timeline at the endScrollOffset point');
|
||||
scroller.scrollLeft = 0.4 * scrollerSize;
|
||||
scroller.scrollLeft = 0.4 * scrollerSize - scrollerSize;
|
||||
assert_equals(
|
||||
percentageScrollTimeline.currentTime,
|
||||
calculateCurrentTime(
|
||||
|
@ -326,15 +326,15 @@ test(function() {
|
|||
'Percentage-based timeline before the endScrollOffset point');
|
||||
|
||||
// Check the calc-based ScrollTimeline. 80% + 5px
|
||||
scroller.scrollLeft = 0.2 * scrollerSize - 10;
|
||||
scroller.scrollLeft = -0.8 * scrollerSize - 10;
|
||||
assert_equals(
|
||||
calcScrollTimeline.currentTime, null,
|
||||
'Calc-based timeline after the endScrollOffset point');
|
||||
scroller.scrollLeft = 0.2 * scrollerSize - 5;
|
||||
scroller.scrollLeft = -0.8 * scrollerSize - 5;
|
||||
assert_equals(
|
||||
calcScrollTimeline.currentTime, null,
|
||||
'Calc-based timeline at the endScrollOffset point');
|
||||
scroller.scrollLeft = 0.2 * scrollerSize;
|
||||
scroller.scrollLeft = -0.8 * scrollerSize;
|
||||
assert_equals(
|
||||
calcScrollTimeline.currentTime,
|
||||
calculateCurrentTime(
|
||||
|
|
|
@ -2,5 +2,4 @@ spec: https://w3c.github.io/navigation-timing/
|
|||
suggested_reviewers:
|
||||
- plehegar
|
||||
- igrigorik
|
||||
- toddreifsteck
|
||||
- yoavweiss
|
||||
|
|
|
@ -43,7 +43,7 @@ def compress_manifest(path):
|
|||
run(args + [path])
|
||||
|
||||
|
||||
def request(url, desc, data=None, json_data=None, params=None, headers=None):
|
||||
def request(url, desc, method=None, data=None, json_data=None, params=None, headers=None):
|
||||
github_token = os.environ.get("GITHUB_TOKEN")
|
||||
default_headers = {
|
||||
"Authorization": "token %s" % github_token,
|
||||
|
@ -57,12 +57,13 @@ def request(url, desc, data=None, json_data=None, params=None, headers=None):
|
|||
kwargs = {"params": params,
|
||||
"headers": _headers}
|
||||
try:
|
||||
logger.info("Loading URL %s" % url)
|
||||
logger.info("Requesting URL %s" % url)
|
||||
if json_data is not None or data is not None:
|
||||
method = requests.post
|
||||
if method is None:
|
||||
method = requests.post
|
||||
kwargs["json"] = json_data
|
||||
kwargs["data"] = data
|
||||
else:
|
||||
elif method is None:
|
||||
method = requests.get
|
||||
|
||||
resp = method(url, **kwargs)
|
||||
|
@ -105,32 +106,19 @@ def get_pr(owner, repo, sha):
|
|||
return pr["number"]
|
||||
|
||||
|
||||
def tag(owner, repo, sha, tag):
|
||||
data = {"ref": "refs/tags/%s" % tag,
|
||||
"sha": sha}
|
||||
url = "https://api.github.com/repos/%s/%s/git/refs" % (owner, repo)
|
||||
|
||||
resp_data = request(url, "Tag creation", json_data=data)
|
||||
if not resp_data:
|
||||
return False
|
||||
|
||||
logger.info("Tagged %s as %s" % (sha, tag))
|
||||
return True
|
||||
|
||||
|
||||
def create_release(manifest_path, owner, repo, sha, tag, body):
|
||||
create_url = "https://api.github.com/repos/%s/%s/releases" % (owner, repo)
|
||||
create_data = {"tag_name": tag,
|
||||
"target_commitish": sha,
|
||||
"name": tag,
|
||||
"body": body}
|
||||
create_data = request(create_url, "Release creation", json_data=create_data)
|
||||
if not create_data:
|
||||
"body": body,
|
||||
"draft": True}
|
||||
create_resp = request(create_url, "Release creation", json_data=create_data)
|
||||
if not create_resp:
|
||||
return False
|
||||
|
||||
# Upload URL contains '{?name,label}' at the end which we want to remove
|
||||
upload_url = create_data["upload_url"].split("{", 1)[0]
|
||||
|
||||
success = True
|
||||
upload_url = create_resp["upload_url"].split("{", 1)[0]
|
||||
|
||||
upload_exts = [".gz", ".bz2", ".zst"]
|
||||
for upload_ext in upload_exts:
|
||||
|
@ -146,9 +134,17 @@ def create_release(manifest_path, owner, repo, sha, tag, body):
|
|||
upload_resp = request(upload_url, "Manifest upload", data=upload_data, params=params,
|
||||
headers={'Content-Type': 'application/octet-stream'})
|
||||
if not upload_resp:
|
||||
success = False
|
||||
return False
|
||||
|
||||
return success
|
||||
release_id = create_resp["id"]
|
||||
edit_url = "https://api.github.com/repos/%s/%s/releases/%s" % (owner, repo, release_id)
|
||||
edit_data = {"draft": False}
|
||||
edit_resp = request(edit_url, "Release publishing", method=requests.patch, json_data=edit_data)
|
||||
if not edit_resp:
|
||||
return False
|
||||
|
||||
logger.info("Released %s" % edit_resp["html_url"])
|
||||
return True
|
||||
|
||||
|
||||
def should_dry_run():
|
||||
|
@ -190,10 +186,6 @@ def main():
|
|||
return Status.FAIL
|
||||
tag_name = "merge_pr_%s" % pr
|
||||
|
||||
tagged = tag(owner, repo, head_rev, tag_name)
|
||||
if not tagged:
|
||||
return Status.FAIL
|
||||
|
||||
if not create_release(manifest_path, owner, repo, head_rev, tag_name, body):
|
||||
return Status.FAIL
|
||||
|
||||
|
|
|
@ -153,18 +153,35 @@ def env_options():
|
|||
|
||||
def run_info_extras(**kwargs):
|
||||
|
||||
def get_bool_pref(pref):
|
||||
def get_bool_pref_if_exists(pref):
|
||||
for key, value in kwargs.get('extra_prefs', []):
|
||||
if pref == key:
|
||||
return value.lower() in ('true', '1')
|
||||
return False
|
||||
return None
|
||||
|
||||
def get_bool_pref(pref):
|
||||
pref_value = get_bool_pref_if_exists(pref)
|
||||
return pref_value if pref_value is not None else False
|
||||
|
||||
rv = {"e10s": kwargs["gecko_e10s"],
|
||||
"wasm": kwargs.get("wasm", True),
|
||||
"verify": kwargs["verify"],
|
||||
"headless": kwargs.get("headless", False) or "MOZ_HEADLESS" in os.environ,
|
||||
"fission": get_bool_pref("fission.autostart"),
|
||||
"sw-e10s": get_bool_pref("dom.serviceWorkers.parent_intercept")}
|
||||
"fission": get_bool_pref("fission.autostart")}
|
||||
|
||||
# The value of `sw-e10s` defaults to whether the "parent_intercept"
|
||||
# implementation is enabled for the current build. This value, however,
|
||||
# can be overridden by explicitly setting the pref with the `--setpref` CLI
|
||||
# flag, which is checked here. If not supplied, the default value of
|
||||
# `sw-e10s` will be filled in in `RunInfo`'s constructor.
|
||||
#
|
||||
# We can't capture the default value right now because (currently), it
|
||||
# defaults to the value of `nightly_build`, which isn't known until
|
||||
# `RunInfo`'s constructor.
|
||||
sw_e10s_override = get_bool_pref_if_exists("dom.serviceWorkers.parent_intercept")
|
||||
if sw_e10s_override is not None:
|
||||
rv["sw-e10s"] = sw_e10s_override
|
||||
|
||||
rv.update(run_info_browser_version(kwargs["binary"]))
|
||||
return rv
|
||||
|
||||
|
|
|
@ -67,8 +67,7 @@ def env_extras(**kwargs):
|
|||
def run_info_extras(**kwargs):
|
||||
package = kwargs["package_name"]
|
||||
rv = {"e10s": True if package is not None and "geckoview" in package else False,
|
||||
"headless": False,
|
||||
"sw-e10s": False}
|
||||
"headless": False}
|
||||
rv.update(run_info_browser_version(kwargs["binary"]))
|
||||
return rv
|
||||
|
||||
|
|
|
@ -112,6 +112,18 @@ class RunInfo(dict):
|
|||
if extras is not None:
|
||||
self.update(extras)
|
||||
|
||||
# Until the test harness can understand default pref values,
|
||||
# (https://bugzilla.mozilla.org/show_bug.cgi?id=1577912) this value
|
||||
# should by synchronized with the default pref value indicated in
|
||||
# StaticPrefList.yaml.
|
||||
#
|
||||
# Currently for automation, the pref (and `sw-e10s`) defaults to true in
|
||||
# nightly builds and false otherwise but can be overridden with
|
||||
# `--setpref`. If overridden, the value would be initialized in
|
||||
# `run_info_extras` and be supplied in the `extras` parameter.
|
||||
if "sw-e10s" not in self:
|
||||
self["sw-e10s"] = self.get("nightly_build", False)
|
||||
|
||||
self["headless"] = extras.get("headless", False)
|
||||
self["webrender"] = enable_webrender
|
||||
|
||||
|
|
|
@ -2,4 +2,3 @@ spec: https://w3c.github.io/user-timing/
|
|||
suggested_reviewers:
|
||||
- plehegar
|
||||
- igrigorik
|
||||
- toddreifsteck
|
||||
|
|
|
@ -10,21 +10,27 @@
|
|||
<script src="/resources/testdriver-vendor.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<button>
|
||||
<script>
|
||||
setup({ allow_uncaught_exception:true });
|
||||
promise_test(async t => {
|
||||
const [, promise2, promise3] = await test_driver.bless(
|
||||
"share needs user activation",
|
||||
() => {
|
||||
return [
|
||||
const button = document.querySelector("button");
|
||||
const p = new Promise(r => {
|
||||
button.onclick = () => {
|
||||
const promises = [];
|
||||
promises.push(
|
||||
navigator.share({ title: "should be pending" }),
|
||||
navigator.share({ title: "should reject" }),
|
||||
navigator.share({ title: "should also reject" }),
|
||||
];
|
||||
}
|
||||
);
|
||||
navigator.share({ title: "should also reject" })
|
||||
);
|
||||
r(promises);
|
||||
};
|
||||
});
|
||||
test_driver.click(button);
|
||||
const [, promise2, promise3] = await p;
|
||||
await Promise.all([
|
||||
promise_rejects(t, "InvalidStateError", promise2),
|
||||
promise_rejects(t, "InvalidStateError", promise3),
|
||||
promise_rejects(t, "InvalidStateError", promise3)
|
||||
]);
|
||||
}, "Only allow one share call at a time, which is controlled by the [[sharePromise]] internal slot.");
|
||||
</script>
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<body>
|
||||
<script src=/resources/testharness.js></script>
|
||||
<script src=/resources/testharnessreport.js></script>
|
||||
<script src="resources/webxr_util.js"></script>
|
||||
<script src="resources/webxr_test_constants.js"></script>
|
||||
<script>
|
||||
xr_promise_test(
|
||||
"supportsSession resolves when immersive options supported",
|
||||
() => {
|
||||
return navigator.xr.test.simulateDeviceConnection(TRACKED_IMMERSIVE_DEVICE)
|
||||
.then( (controller) => navigator.xr.supportsSession('immersive-vr'));
|
||||
});
|
||||
</script>
|
||||
</body>
|
|
@ -1,21 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<body>
|
||||
<script src=/resources/testharness.js></script>
|
||||
<script src=/resources/testharnessreport.js></script>
|
||||
<script src="resources/webxr_util.js"></script>
|
||||
<script src="resources/webxr_test_constants.js"></script>
|
||||
<script>
|
||||
xr_promise_test(
|
||||
"supportsSession rejects when options not supported",
|
||||
(t) => {
|
||||
return navigator.xr.test.simulateDeviceConnection(VALID_NON_IMMERSIVE_DEVICE)
|
||||
.then( (controller) => {
|
||||
return promise_rejects(
|
||||
t,
|
||||
"NotSupportedError",
|
||||
navigator.xr.supportsSession('immersive-vr')
|
||||
);
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
|
@ -1,18 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<body>
|
||||
<script src=/resources/testharness.js></script>
|
||||
<script src=/resources/testharnessreport.js></script>
|
||||
<script src="resources/webxr_util.js"></script>
|
||||
<script src="resources/webxr_test_constants.js"></script>
|
||||
<script>
|
||||
xr_promise_test(
|
||||
"supportsSession resolves when inline options supported",
|
||||
(t) => {
|
||||
return navigator.xr.test.simulateDeviceConnection(TRACKED_IMMERSIVE_DEVICE)
|
||||
.then( (controller) => {
|
||||
// Inline sessions should be supported.
|
||||
return navigator.xr.supportsSession('inline');
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</body>
|
|
@ -1,5 +1,4 @@
|
|||
[canvas-resizing-with-pbo-bound.html]
|
||||
expected: TIMEOUT
|
||||
[WebGL test #0: Unable to fetch WebGL rendering context for Canvas]
|
||||
expected: FAIL
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue