diff --git a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini index a9e46713244..76b398963ae 100644 --- a/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini +++ b/tests/wpt/metadata/FileAPI/url/url-in-tags-revoke.window.js.ini @@ -7,7 +7,7 @@ expected: FAIL [Opening a blob URL in a new window immediately before revoking it works.] - expected: TIMEOUT + expected: FAIL [Opening a blob URL in a noopener about:blank window immediately before revoking it works.] expected: FAIL diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index 735905e5118..1750f277d6b 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -37,6 +37,18 @@ {} ] ], + "css/css-grid/subgrid/contain-strict-nested-subgrid-crash.html": [ + [ + "css/css-grid/subgrid/contain-strict-nested-subgrid-crash.html", + {} + ] + ], + "css/css-grid/subgrid/contain-strict-subgrid-crash.html": [ + [ + "css/css-grid/subgrid/contain-strict-subgrid-crash.html", + {} + ] + ], "css/css-multicol/abspos-in-multicol-with-spanner-crash.html": [ [ "css/css-multicol/abspos-in-multicol-with-spanner-crash.html", @@ -96279,6 +96291,18 @@ {} ] ], + "css/CSS2/text/bidi-span-003.html": [ + [ + "css/CSS2/text/bidi-span-003.html", + [ + [ + "/css/CSS2/text/bidi-span-003-ref.html", + "==" + ] + ], + {} + ] + ], "css/CSS2/text/letter-spacing-004.xht": [ [ "css/CSS2/text/letter-spacing-004.xht", @@ -123431,6 +123455,18 @@ {} ] ], + "css/css-flexbox/table-as-item-fixed-min-width.html": [ + [ + "css/css-flexbox/table-as-item-fixed-min-width.html", + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], "css/css-flexbox/table-as-item-narrow-content.html": [ [ "css/css-flexbox/table-as-item-narrow-content.html", @@ -123448,7 +123484,7 @@ "css/css-flexbox/table-as-item-wide-content.html", [ [ - "/css/reference/ref-filled-green-100px-square-only.html", + "/css/reference/ref-filled-green-100px-square.xht", "==" ] ], @@ -157957,6 +157993,30 @@ {} ] ], + "css/css-text/white-space/white-space-zero-fontsize-001.html": [ + [ + "css/css-text/white-space/white-space-zero-fontsize-001.html", + [ + [ + "/css/css-text/white-space/reference/white-space-zero-fontsize-001-ref.html", + "==" + ] + ], + {} + ] + ], + "css/css-text/white-space/white-space-zero-fontsize-002.html": [ + [ + "css/css-text/white-space/white-space-zero-fontsize-002.html", + [ + [ + "/css/css-text/white-space/reference/white-space-zero-fontsize-002-ref.html", + "==" + ] + ], + {} + ] + ], "css/css-text/word-boundary/word-boundary-001.html": [ [ "css/css-text/word-boundary/word-boundary-001.html", @@ -218267,6 +218327,36 @@ "client-hints/accept-ch-no-feature-policy-navigation.https.html.headers": [ [] ], + "client-hints/accept-ch-stickiness/resources/accept-ch-test.js": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/accept-ch.html": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/accept-ch.html.headers": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/clear-site-data.html": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/clear-site-data.html.headers": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/do-not-expect-client-hints-headers.html": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/echo-client-hints-received.py": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/expect-client-hints-headers.html": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/http-equiv-accept-ch.html": [ + [] + ], + "client-hints/accept-ch-stickiness/resources/http-equiv-accept-ch.html.headers": [ + [] + ], "client-hints/accept_ch.http.html.headers": [ [] ], @@ -218288,30 +218378,12 @@ "client-hints/echo_ua_client_hints_received.py": [ [] ], - "client-hints/resources/accept-ch-lifetime-test.js": [ - [] - ], "client-hints/resources/accept_ch.html": [ [] ], "client-hints/resources/accept_ch.html.headers": [ [] ], - "client-hints/resources/accept_ch_lifetime.html": [ - [] - ], - "client-hints/resources/accept_ch_lifetime.html.headers": [ - [] - ], - "client-hints/resources/clear-site-data.html": [ - [] - ], - "client-hints/resources/clear-site-data.html.headers": [ - [] - ], - "client-hints/resources/do_not_expect_client_hints_headers.html": [ - [] - ], "client-hints/resources/expect-client-hints-headers-iframe.py": [ [] ], @@ -218321,12 +218393,6 @@ "client-hints/resources/feature-policy-navigation.js": [ [] ], - "client-hints/resources/http_equiv_accept_ch_lifetime.html": [ - [] - ], - "client-hints/resources/http_equiv_accept_ch_lifetime.html.headers": [ - [] - ], "client-hints/resources/iframe-accept-ch-lifetime.html": [ [] ], @@ -218336,9 +218402,6 @@ "client-hints/resources/sec-ch-ua.py": [ [] ], - "client-hints/resources/square.png": [ - [] - ], "client-hints/resources/stale-echo-client-hints.py": [ [] ], @@ -244493,6 +244556,9 @@ "css/CSS2/text/bidi-span-002-ref.html": [ [] ], + "css/CSS2/text/bidi-span-003-ref.html": [ + [] + ], "css/CSS2/text/letter-spacing-004-ref.xht": [ [] ], @@ -261020,6 +261086,12 @@ "css/css-text/white-space/reference/white-space-wrap-after-nowrap-001-ref.html": [ [] ], + "css/css-text/white-space/reference/white-space-zero-fontsize-001-ref.html": [ + [] + ], + "css/css-text/white-space/reference/white-space-zero-fontsize-002-ref.html": [ + [] + ], "css/css-text/word-boundary/reference/word-boundary-001-ref.html": [ [] ], @@ -281687,18 +281759,15 @@ "mixed-content/generic/sanity-checker.js": [ [] ], + "mixed-content/generic/spec_json.js": [ + [] + ], "mixed-content/generic/test-case.sub.js": [ [] ], - "mixed-content/generic/tools/generate.py": [ - [] - ], "mixed-content/spec.src.json": [ [] ], - "mixed-content/spec_json.js": [ - [] - ], "mst-content-hint/META.yml": [ [] ], @@ -284495,18 +284564,15 @@ "referrer-policy/generic/sanity-checker.js": [ [] ], + "referrer-policy/generic/spec_json.js": [ + [] + ], "referrer-policy/generic/test-case.sub.js": [ [] ], - "referrer-policy/generic/tools/generate.py": [ - [] - ], "referrer-policy/spec.src.json": [ [] ], - "referrer-policy/spec_json.js": [ - [] - ], "remote-playback/META.yml": [ [] ], @@ -292886,10 +292952,10 @@ "upgrade-insecure-requests/gen/top.http-rp/upgrade/xhr/same-https.downgrade.https.html.headers": [ [] ], - "upgrade-insecure-requests/generic/test-case.sub.js": [ + "upgrade-insecure-requests/generic/spec_json.js": [ [] ], - "upgrade-insecure-requests/generic/tools/generate.py": [ + "upgrade-insecure-requests/generic/test-case.sub.js": [ [] ], "upgrade-insecure-requests/link-upgrade/basic-link-no-upgrade.sub.html": [ @@ -292955,9 +293021,6 @@ "upgrade-insecure-requests/spec.src.json": [ [] ], - "upgrade-insecure-requests/spec_json.js": [ - [] - ], "upgrade-insecure-requests/support/redirect-cors.py": [ [] ], @@ -315548,20 +315611,122 @@ {} ] ], - "client-hints/accept-ch-lifetime.tentative.https.html": [ + "client-hints/accept-ch-no-feature-policy-navigation.https.html": [ [ - "client-hints/accept-ch-lifetime.tentative.https.html", + "client-hints/accept-ch-no-feature-policy-navigation.https.html", + {} + ] + ], + "client-hints/accept-ch-stickiness/cross-origin-iframe-not-setting-other-origins.https.html": [ + [ + "client-hints/accept-ch-stickiness/cross-origin-iframe-not-setting-other-origins.https.html", { "timeout": "long" } ] ], - "client-hints/accept-ch-no-feature-policy-navigation.https.html": [ + "client-hints/accept-ch-stickiness/cross-origin-iframe-not-setting-own-origin.https.html": [ [ - "client-hints/accept-ch-no-feature-policy-navigation.https.html", + "client-hints/accept-ch-stickiness/cross-origin-iframe-not-setting-own-origin.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/cross-origin-navigation.https.html": [ + [ + "client-hints/accept-ch-stickiness/cross-origin-navigation.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/cross-origin-subresource.https.html": [ + [ + "client-hints/accept-ch-stickiness/cross-origin-subresource.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-iframe-not-setting-other-origins.https.html": [ + [ + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-iframe-not-setting-other-origins.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-iframe-not-setting-own-origin.https.html": [ + [ + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-iframe-not-setting-own-origin.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-navigation.https.html": [ + [ + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-navigation.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-subresource.https.html": [ + [ + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-subresource.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/http-equiv-same-origin-iframe.https.html": [ + [ + "client-hints/accept-ch-stickiness/http-equiv-same-origin-iframe.https.html", {} ] ], + "client-hints/accept-ch-stickiness/http-equiv-same-origin-navigation.https.html": [ + [ + "client-hints/accept-ch-stickiness/http-equiv-same-origin-navigation.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/http-equiv-same-origin-subresource.https.html": [ + [ + "client-hints/accept-ch-stickiness/http-equiv-same-origin-subresource.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/same-origin-iframe.https.html": [ + [ + "client-hints/accept-ch-stickiness/same-origin-iframe.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/same-origin-navigation.https.html": [ + [ + "client-hints/accept-ch-stickiness/same-origin-navigation.https.html", + { + "timeout": "long" + } + ] + ], + "client-hints/accept-ch-stickiness/same-origin-subresource.https.html": [ + [ + "client-hints/accept-ch-stickiness/same-origin-subresource.https.html", + { + "timeout": "long" + } + ] + ], "client-hints/accept_ch.http.html": [ [ "client-hints/accept_ch.http.html", @@ -360904,6 +361069,12 @@ {} ] ], + "html/browsers/history/the-location-interface/location_reload_javascript_url.html": [ + [ + "html/browsers/history/the-location-interface/location_reload_javascript_url.html", + {} + ] + ], "html/browsers/history/the-location-interface/location_replace.html": [ [ "html/browsers/history/the-location-interface/location_replace.html", @@ -439449,6 +439620,24 @@ } ] ], + "webxr/ar-module/xrDevice_isSessionSupported_immersive-ar.https.html": [ + [ + "webxr/ar-module/xrDevice_isSessionSupported_immersive-ar.https.html", + {} + ] + ], + "webxr/ar-module/xrDevice_requestSession_immersive-ar.https.html": [ + [ + "webxr/ar-module/xrDevice_requestSession_immersive-ar.https.html", + {} + ] + ], + "webxr/ar-module/xrSession_environmentBlendMode.https.html": [ + [ + "webxr/ar-module/xrSession_environmentBlendMode.https.html", + {} + ] + ], "webxr/events_input_source_recreation.https.html": [ [ "webxr/events_input_source_recreation.https.html", @@ -472341,7 +472530,7 @@ "testharness" ], "WebIDL/ecmascript-binding/put-forwards.html": [ - "b004bd008d8ce679009e7ed339775fc253fdd6fa", + "d7cc389b1c88ec6f8c166115dbf45b4bc58b540b", "testharness" ], "WebIDL/ecmascript-binding/sequence-conversion.html": [ @@ -476560,10 +476749,6 @@ "f9595a794d9c93dca09f371f5797399a9204ed53", "support" ], - "client-hints/accept-ch-lifetime.tentative.https.html": [ - "f0b03ba0a8c311642af793a341653995fb73cbd9", - "testharness" - ], "client-hints/accept-ch-no-feature-policy-navigation.https.html": [ "5fb6c22f50873ce597e6d5ed04c1ebeef64a17c1", "testharness" @@ -476572,6 +476757,102 @@ "7eb28a000bdde9634e618701e2ba512e4a9ebc49", "support" ], + "client-hints/accept-ch-stickiness/cross-origin-iframe-not-setting-other-origins.https.html": [ + "5316c2874cf624751f846d554b35b57e8630af40", + "testharness" + ], + "client-hints/accept-ch-stickiness/cross-origin-iframe-not-setting-own-origin.https.html": [ + "f83aa6173e2dbca7de68d817914a56700a0cdd79", + "testharness" + ], + "client-hints/accept-ch-stickiness/cross-origin-navigation.https.html": [ + "e05c8e3ef5bf853c04acc396166e0cd5a6a00b60", + "testharness" + ], + "client-hints/accept-ch-stickiness/cross-origin-subresource.https.html": [ + "249ccb4a60d4756b1be34e2e324b29eae8e59370", + "testharness" + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-iframe-not-setting-other-origins.https.html": [ + "226b3116fc173ebb7c217df94addbcadbfacec04", + "testharness" + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-iframe-not-setting-own-origin.https.html": [ + "705b65a7bf44c1343a9e45045c17cd24cf2dbfd2", + "testharness" + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-navigation.https.html": [ + "ffebeb919f0d440579fd207ee8a4dee59102ceae", + "testharness" + ], + "client-hints/accept-ch-stickiness/http-equiv-cross-origin-subresource.https.html": [ + "7bb5d1520c746373d60bb9d0bee150d29dc0b048", + "testharness" + ], + "client-hints/accept-ch-stickiness/http-equiv-same-origin-iframe.https.html": [ + "f07adaa901c4ed73bd27410cc081f9daed602918", + "testharness" + ], + "client-hints/accept-ch-stickiness/http-equiv-same-origin-navigation.https.html": [ + "91b8cd639f26afe3d9d26bcbd92f9fc708a0bdb4", + "testharness" + ], + "client-hints/accept-ch-stickiness/http-equiv-same-origin-subresource.https.html": [ + "793bf5e0796cb25c3847259bd56a74b0c1da108b", + "testharness" + ], + "client-hints/accept-ch-stickiness/resources/accept-ch-test.js": [ + "ed635513fd70f20ec2c5b51fd88a4b0380b77190", + "support" + ], + "client-hints/accept-ch-stickiness/resources/accept-ch.html": [ + "694c5b03bc18a0062689caaac5147e6aca8b6415", + "support" + ], + "client-hints/accept-ch-stickiness/resources/accept-ch.html.headers": [ + "370f9869226db4bdf8785c876b13d69b415e5abf", + "support" + ], + "client-hints/accept-ch-stickiness/resources/clear-site-data.html": [ + "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391", + "support" + ], + "client-hints/accept-ch-stickiness/resources/clear-site-data.html.headers": [ + "a0077c0577fc31220a63d0424f3fd4d1ab2de2bc", + "support" + ], + "client-hints/accept-ch-stickiness/resources/do-not-expect-client-hints-headers.html": [ + "147206b26aeb8fe3f4813e4b1f68d7a59b658c46", + "support" + ], + "client-hints/accept-ch-stickiness/resources/echo-client-hints-received.py": [ + "be712293be3c749d98d328dd2fec7334da4ad9b2", + "support" + ], + "client-hints/accept-ch-stickiness/resources/expect-client-hints-headers.html": [ + "cda1f81978d9a8dbc7dd12286d8885f16007b9e0", + "support" + ], + "client-hints/accept-ch-stickiness/resources/http-equiv-accept-ch.html": [ + "05e18a44fb96665299ab79f037a7ca20180bf92a", + "support" + ], + "client-hints/accept-ch-stickiness/resources/http-equiv-accept-ch.html.headers": [ + "27140bf36e4dbd22b8f7190587f42a570c9d12bd", + "support" + ], + "client-hints/accept-ch-stickiness/same-origin-iframe.https.html": [ + "25e29017f403816e0917979a7c4886ac28f65fc4", + "testharness" + ], + "client-hints/accept-ch-stickiness/same-origin-navigation.https.html": [ + "e35cbdcedd0f30e31834764cb23a574ce75feed5", + "testharness" + ], + "client-hints/accept-ch-stickiness/same-origin-subresource.https.html": [ + "0b7151a2cca08d941d313e014e41769c08c350cc", + "testharness" + ], "client-hints/accept_ch.http.html": [ "50d77646f89aea13c212c6ecee4e7f32107007e9", "testharness" @@ -476640,10 +476921,6 @@ "dd516a97c965f4a248fa27ed8ce71dae6251e106", "testharness" ], - "client-hints/resources/accept-ch-lifetime-test.js": [ - "05aaec1aef8a50c9aac835fd523c48c680e998a3", - "support" - ], "client-hints/resources/accept_ch.html": [ "48d09f2d95c57875b71b088c2db8ce9585f5a237", "support" @@ -476652,26 +476929,6 @@ "91ee40652f06508478bb776bf4068fd61277cef3", "support" ], - "client-hints/resources/accept_ch_lifetime.html": [ - "a77eaab3f0baac62797e2b48592603da463c2f8a", - "support" - ], - "client-hints/resources/accept_ch_lifetime.html.headers": [ - "370f9869226db4bdf8785c876b13d69b415e5abf", - "support" - ], - "client-hints/resources/clear-site-data.html": [ - "e69de29bb2d1d6434b8b29ae775ad8c2e48c5391", - "support" - ], - "client-hints/resources/clear-site-data.html.headers": [ - "a0077c0577fc31220a63d0424f3fd4d1ab2de2bc", - "support" - ], - "client-hints/resources/do_not_expect_client_hints_headers.html": [ - "b3cf5df4c27224fe30a6ec3b4507aa30a8fe6a95", - "support" - ], "client-hints/resources/expect-client-hints-headers-iframe.py": [ "e72d77c47d9aae36c619e8e065e5685f7a9c166b", "support" @@ -476684,14 +476941,6 @@ "4487d9a447313f87dd2f230ce7d858b38008fae8", "support" ], - "client-hints/resources/http_equiv_accept_ch_lifetime.html": [ - "ab2ab9e60c8a4ee6d4fc088fb6c8d4d6d0daffd6", - "support" - ], - "client-hints/resources/http_equiv_accept_ch_lifetime.html.headers": [ - "27140bf36e4dbd22b8f7190587f42a570c9d12bd", - "support" - ], "client-hints/resources/iframe-accept-ch-lifetime.html": [ "693e4f94dcc3363f0d15e7c7a18a7a598c72cf77", "support" @@ -476704,10 +476953,6 @@ "a14a27dadf9e333784a5c636c821634b387e475f", "support" ], - "client-hints/resources/square.png": [ - "01c9666a8de9d5535615aff830810e5df4b2156f", - "support" - ], "client-hints/resources/stale-echo-client-hints.py": [ "769fa909fa4b3b960fbde2e6df282efc970b35d0", "support" @@ -476889,7 +477134,7 @@ "support" ], "common/security-features/README.md": [ - "c19874653a7cac4d314fd9dd0bf921082c6f8d70", + "2509d661b4afb68a5bfca0a41270d93586ddbe49", "support" ], "common/security-features/resources/common.sub.js": [ @@ -477013,15 +477258,15 @@ "support" ], "common/security-features/tools/generate.py": [ - "6fac19827aa1043ad7d3244cf78f44a8ed0b5cbc", + "3c298b5a3e20216f822b420d3460e1bea48e22d5", "support" ], "common/security-features/tools/spec_validator.py": [ - "06a5acce23a41ad0157871bc2d5de26d307a1c53", + "d845b086a3ed55aae6cd0645ece986c238a54a55", "support" ], "common/security-features/tools/template/disclaimer.template": [ - "66c43ed6f21324d44b1596c09a02fecf53f41323", + "ba9458cb31252aecf3c447b43c505a04d7abf92f", "support" ], "common/security-features/tools/template/spec_json.js.template": [ @@ -501181,7 +501426,7 @@ "testharness" ], "cors/preflight-cache.htm": [ - "0b6138bdffacee41537e4ed4131620e863ceb3d1", + "b3de663ebc1d32409c8ed376a3873b2a2b675eb5", "testharness" ], "cors/preflight-failure.htm": [ @@ -550460,6 +550705,14 @@ "d4fc6de070d23ebe8817e9a299c44e48cad256a9", "reftest" ], + "css/CSS2/text/bidi-span-003-ref.html": [ + "4cebcb90bba5d842f2f617c5f7878bca117d4acb", + "support" + ], + "css/CSS2/text/bidi-span-003.html": [ + "92a90d529c5a10ff099a03a3133f6c96c5b4d91c", + "reftest" + ], "css/CSS2/text/bidi-text-decoration-underline-001.xht": [ "e3efb521f2208113ad3278a261348bc5997240f5", "visual" @@ -574084,12 +574337,16 @@ "a83f518a232e82bf76a8b9c7a8d6cae71808b420", "reftest" ], + "css/css-flexbox/table-as-item-fixed-min-width.html": [ + "3a676babde0e573f3f801d1f498b02e8a6b891ff", + "reftest" + ], "css/css-flexbox/table-as-item-narrow-content.html": [ "31cf112518198044d485b4ba5ff477773c29487c", "reftest" ], "css/css-flexbox/table-as-item-wide-content.html": [ - "475adf548fdba180ec684ff4702aadc305d6c632", + "45ad49ec2d69808cb09892515ea882716edd369d", "reftest" ], "css/css-flexbox/table-with-infinite-max-intrinsic-width.html": [ @@ -582945,15 +583202,15 @@ "support" ], "css/css-grid/alignment/grid-align-content-distribution-vertical-lr.html": [ - "8217f4dd2c3cfd031aece87d54a78d5bcec640ca", + "cecab3e213653fbb732cc12f04cc44daee6da5a5", "testharness" ], "css/css-grid/alignment/grid-align-content-distribution-vertical-rl.html": [ - "096e3fd6910a09ba5097b66acdb1dcf8a6d5326e", + "40ee22190b917488af3005e16574a75f1de210ca", "testharness" ], "css/css-grid/alignment/grid-align-content-distribution.html": [ - "7b66ddb995191c67278d861aa6cb6a637bc6adaf", + "488fc05aad441bd2a648ad1a95c339ae82504ee1", "testharness" ], "css/css-grid/alignment/grid-align-content.html": [ @@ -584901,7 +585158,7 @@ "reftest" ], "css/css-grid/grid-layout-properties.html": [ - "0debe91f9246f67753cdb89c62ef818cbba73063", + "7cdda674b4759ef50766416fb5399033a0f09f06", "testharness" ], "css/css-grid/grid-model/display-grid.html": [ @@ -585504,6 +585761,14 @@ "995b1a8d2ae1aaa7c0230379e5b799b12ac9e93c", "reftest" ], + "css/css-grid/subgrid/contain-strict-nested-subgrid-crash.html": [ + "a98e43777eee9347ba1d69a4b133140cea0577fc", + "crashtest" + ], + "css/css-grid/subgrid/contain-strict-subgrid-crash.html": [ + "0d377175b7b6aa6b8fd5ba0dc3e3f3ed20f8aad2", + "crashtest" + ], "css/css-grid/subgrid/grid-gap-001-ref.html": [ "e7909fc2064e4d3498ab90da179cf4ad0d0e9c79", "support" @@ -607712,6 +607977,14 @@ "80b2260cbbe6122e90c297ab1f2cd83917712030", "support" ], + "css/css-text/white-space/reference/white-space-zero-fontsize-001-ref.html": [ + "3c27ed25beed79a983f221c203f9aa72abe2beca", + "support" + ], + "css/css-text/white-space/reference/white-space-zero-fontsize-002-ref.html": [ + "6d2134ac4da3fc7bc3ce78fea834f2037e47cf6c", + "support" + ], "css/css-text/white-space/seg-break-transformation-000.html": [ "cb7b0f30b566320c1022f61fde44bc09695badb1", "testharness" @@ -608036,6 +608309,14 @@ "a484f1cf9167e468063cf2205493b8e71a254470", "reftest" ], + "css/css-text/white-space/white-space-zero-fontsize-001.html": [ + "900e1143f2fd84ed68892be4622f93e678250ab9", + "reftest" + ], + "css/css-text/white-space/white-space-zero-fontsize-002.html": [ + "1b8d3b7eb60f07d12ea87d3464c228269262ec7d", + "reftest" + ], "css/css-text/word-boundary/reference/word-boundary-001-ref.html": [ "620079f6ad48bba3d65a9bcd92edfd717228b973", "support" @@ -641845,7 +642126,7 @@ "support" ], "docs/writing-tests/python-handlers/index.md": [ - "f75703bb9efdb1a467b9172be9385bfdd63ad537", + "e3be1485bf0e6a07af647000c6dee0d69b79a2dc", "support" ], "docs/writing-tests/reftest-tutorial.md": [ @@ -646829,7 +647110,7 @@ "support" ], "encrypted-media/scripts/check-encryption-scheme.js": [ - "5d629271b42ff374e1b40a9a3b4113b42d1afbaf", + "ffab4a34911eb918d5e999e131205b4a9f92d92c", "support" ], "encrypted-media/scripts/check-initdata-type.js": [ @@ -647473,11 +647754,11 @@ "support" ], "eventsource/resources/cors-cookie.py": [ - "7deaff498d7c0c077f6417cd725725ca55039b96", + "c35824ff437feed72364181b57d7732c170722ab", "support" ], "eventsource/resources/cors.py": [ - "d01596c8366367b87e4fcfd971208c3e44604f31", + "42a0a0bb5843389674453fc56d8a87c67cd48dcd", "support" ], "eventsource/resources/eventsource-onmessage-realm.htm": [ @@ -647489,7 +647770,7 @@ "support" ], "eventsource/resources/last-event-id.py": [ - "09e4f29731a1d597172b64311c6400a189a4dd20", + "2b74bf66a286ff65b386662412018002c762dee2", "support" ], "eventsource/resources/message.py": [ @@ -653144,6 +653425,10 @@ "eb2c21b38a307b6ac015f018a8192384455ac9fb", "testharness" ], + "html/browsers/history/the-location-interface/location_reload_javascript_url.html": [ + "737cafbcd3ec2955102427227b58c63edf3ec525", + "testharness" + ], "html/browsers/history/the-location-interface/location_replace.html": [ "2f2d573084598e0de753b9e03045cbd281e3efe5", "testharness" @@ -679952,12 +680237,12 @@ "55a103adf0f29c615d40bc47943be1aec25c8f1e", "support" ], - "mixed-content/generic/test-case.sub.js": [ - "661cff12d00e1d7cc1f8e9b2ca2f4ff2b65f4e06", + "mixed-content/generic/spec_json.js": [ + "2f5212e9ff762d0f9e10a738120035beea618560", "support" ], - "mixed-content/generic/tools/generate.py": [ - "060bdabf91cc41f9be0d6c8e5bbf4a8e05c381c1", + "mixed-content/generic/test-case.sub.js": [ + "661cff12d00e1d7cc1f8e9b2ca2f4ff2b65f4e06", "support" ], "mixed-content/imageset.https.sub.html": [ @@ -679965,11 +680250,7 @@ "testharness" ], "mixed-content/spec.src.json": [ - "c272bb3f642bfd71ace5e4bcab4a66cadaf732c5", - "support" - ], - "mixed-content/spec_json.js": [ - "00428b1fa5e6396b82484d33cf36589a8c64dd9a", + "8ece6de3ffdf84c6acdcfd4c9c17ec5d83099212", "support" ], "mst-content-hint/META.yml": [ @@ -687789,15 +688070,15 @@ "testharness" ], "payment-request/allowpaymentrequest/removing-allowpaymentrequest.https.sub.html": [ - "b0e0cbacbf2e611139cd30747acaaf1186ae21f6", + "64baebb50246514e9fd3db59d3dada4af9720825", "testharness" ], "payment-request/allowpaymentrequest/setting-allowpaymentrequest-timing.https.sub.html": [ - "45661de7e0dedd19cda4a7a2f0a76aaa72e91ccc", + "a741296d5da75460f3d2877f228d4c59e13d643c", "testharness" ], "payment-request/allowpaymentrequest/setting-allowpaymentrequest.https.sub.html": [ - "06f0c8479da9450c748fe01c6d411f73355210da", + "c1d53a4bc261759d5ee7243c90e4beb7f8b7de4e", "testharness" ], "payment-request/billing-address-changed-manual.https.html": [ @@ -701872,6 +702153,10 @@ "e296ce93b965b788ea79f2f2b6cff45d5dce55f0", "support" ], + "referrer-policy/generic/spec_json.js": [ + "cad5e79f1f8b80bdc54f2f8e861d821770b29721", + "support" + ], "referrer-policy/generic/subresource-test/area-navigate.html": [ "2a4f29654df1da8e3f18359dacf6ce092c325a67", "testharness" @@ -701912,20 +702197,12 @@ "c8a6b139f33fa044ddb644409b1e4437d3df338c", "support" ], - "referrer-policy/generic/tools/generate.py": [ - "7cace61c0f0b7cd973bf2ea6f88d12a436805d48", - "support" - ], "referrer-policy/generic/unsupported-csp-referrer-directive.html": [ "a7f22210edd9703c67cf9df819c07117b5399445", "testharness" ], "referrer-policy/spec.src.json": [ - "2674a45d6db37fdd2fed84bf08fea51b5432f456", - "support" - ], - "referrer-policy/spec_json.js": [ - "8a15eaee1ebd7886a1f80dc7dc0bac46b08f595d", + "b0e07eb132861688d58126ab506afb4c8de03256", "support" ], "remote-playback/META.yml": [ @@ -702825,7 +703102,7 @@ "support" ], "resources/chromium/webxr-test.js": [ - "b45ff20dbc4ec9cf9fbcd36b8e3b7887ba512947", + "54788b4ca3de9fc99dd01d2693829bd5be08956f", "support" ], "resources/chromium/webxr-test.js.headers": [ @@ -702853,7 +703130,7 @@ "support" ], "resources/test/conftest.py": [ - "857f1b41bcb11c422d6603e79d8c98a6b1dfbb07", + "a9f4203f279cbadb702456b1d71d6aa60ed5d0ef", "support" ], "resources/test/harness.html": [ @@ -703193,7 +703470,7 @@ "support" ], "resources/test/tox.ini": [ - "d0c5186f15692153fe0d09ba727e4350f1de2ef7", + "a7a02e4b93bdc009ef0b05cbc039c3977fcdd46e", "support" ], "resources/test/variants.js": [ @@ -714765,7 +715042,7 @@ "support" ], "tools/serve/serve.py": [ - "1868b1a36e51c187491d73aa2708484da882042f", + "f33846bc24c042729857113f8e8be9387b9a8e56", "support" ], "tools/serve/test_functional.py": [ @@ -718721,7 +718998,7 @@ "support" ], "tools/wpt/browser.py": [ - "3ee98d959ec5befc58b884e0ec5385d554bc8725", + "6dd2f5c4c9001f1edfa0a723759444c53106d673", "support" ], "tools/wpt/commands.json": [ @@ -718733,7 +719010,7 @@ "support" ], "tools/wpt/install.py": [ - "24915f0c98d0be3a864a3a515ba0e162dc37da8c", + "3da697e5333a55510d0b63b74f79c236303b4c4f", "support" ], "tools/wpt/mach-emulator.manifest": [ @@ -718845,7 +719122,7 @@ "support" ], "tools/wptrunner/requirements.txt": [ - "3cd01446e25bceb4dadef48259117bd057ea6f48", + "74a358ed10b54d1482b4732fdc9c97e01c75c22d", "support" ], "tools/wptrunner/requirements_android_webview.txt": [ @@ -719125,7 +719402,7 @@ "support" ], "tools/wptrunner/wptrunner/environment.py": [ - "7dcea4aeafabb9c481dccdc1aaf9bd153572bb7d", + "608b24dfd3ad878a95d27b030e17890d27eb9a0a", "support" ], "tools/wptrunner/wptrunner/executors/__init__.py": [ @@ -719153,7 +719430,7 @@ "support" ], "tools/wptrunner/wptrunner/executors/executormarionette.py": [ - "01306397db7944cd0dfadf8f1bf0327dbacf94d6", + "837329fccb7795fbd612fea4c0b7cacbcaf469ed", "support" ], "tools/wptrunner/wptrunner/executors/executoropera.py": [ @@ -719169,7 +719446,7 @@ "support" ], "tools/wptrunner/wptrunner/executors/executorservo.py": [ - "2b8e865fa9bd1f0f62a1b9cbd6f79ffd0bcb8d46", + "8f8e120e66da6403f256f99f279f1f5dc8008272", "support" ], "tools/wptrunner/wptrunner/executors/executorservodriver.py": [ @@ -719469,7 +719746,7 @@ "support" ], "tools/wptrunner/wptrunner/wpttest.py": [ - "d650e98dfbf5976afa0138f0ac166e950e194e82", + "bff61f3e77657926ab0d501963d00621bdc2a78f", "support" ], "tools/wptserve/.gitignore": [ @@ -720389,11 +720666,11 @@ "manual" ], "uievents/order-of-events/mouse-events/wheel-basic-manual.html": [ - "093951dfe49b4f68e9015614f320f9254d54f391", + "c5a09f6cb4f8919539090187fa8be1a670617b33", "manual" ], "uievents/order-of-events/mouse-events/wheel-scrolling-manual.html": [ - "5acae6d4777ccff91d4bafcfa16cdde2eba69912", + "cae4cf6523b4a23d125d187215a96ad7918675cc", "manual" ], "uievents/resources/eventrecorder.js": [ @@ -723372,12 +723649,12 @@ "43c8dcf97b3ea5af9cee9403392b998c8d079a0a", "testharness" ], - "upgrade-insecure-requests/generic/test-case.sub.js": [ - "cde228dbad89f7b707a6332dc8ed3b41e0474555", + "upgrade-insecure-requests/generic/spec_json.js": [ + "89b17048e22f642255e67aa13bed9bdbecf01bec", "support" ], - "upgrade-insecure-requests/generic/tools/generate.py": [ - "4c19f4c34dab0ecd302ae22fcffdc3f07ce935c6", + "upgrade-insecure-requests/generic/test-case.sub.js": [ + "cde228dbad89f7b707a6332dc8ed3b41e0474555", "support" ], "upgrade-insecure-requests/link-upgrade.sub.https.html": [ @@ -723465,11 +723742,7 @@ "support" ], "upgrade-insecure-requests/spec.src.json": [ - "6aee9a280b0ff5001c77e2d8a688618c049dc226", - "support" - ], - "upgrade-insecure-requests/spec_json.js": [ - "9122ce38e31e1a2c2c2c3f4caa291ae24e91a8cb", + "dcf63008f63116fceb47d5d2bfb7aa15696202f0", "support" ], "upgrade-insecure-requests/support/redirect-cors.py": [ @@ -729117,7 +729390,7 @@ "support" ], "webrtc/RTCDTMFSender-insertDTMF.https.html": [ - "8ac144bab9286fbaa560272ae9c1ca7965090532", + "62a5f0472c1983140f1ccd29b10e5b86d302c79b", "testharness" ], "webrtc/RTCDTMFSender-ontonechange-long.https.html": [ @@ -729169,7 +729442,7 @@ "testharness" ], "webrtc/RTCIceConnectionState-candidate-pair.https.html": [ - "6c93aec9260d50d1d6cfcd637d15dd44385bee0d", + "0752c9aaee65cd4216861e9900c8f863f9d14456", "testharness" ], "webrtc/RTCIceTransport-extension-helper.js": [ @@ -729197,11 +729470,11 @@ "testharness" ], "webrtc/RTCPeerConnection-addTrack.https.html": [ - "1550fc4f7943b79cc331d5c93ca6d5643793dead", + "3f4f927883de757d23caf7fda2af30715d67d8ed", "testharness" ], "webrtc/RTCPeerConnection-addTransceiver.https.html": [ - "6df056117d02452e040b153147dbdad7bf8fa9bb", + "3640bfb31cd32b926c0493aa1d80f9d291dfae26", "testharness" ], "webrtc/RTCPeerConnection-canTrickleIceCandidates.html": [ @@ -729213,7 +729486,7 @@ "testharness" ], "webrtc/RTCPeerConnection-connectionState.https.html": [ - "a054a1e8cccbd02cc7b55f96ff483219846cf997", + "9e2f3649aec145f3f8787846c0cd3b9ac74a7a81", "testharness" ], "webrtc/RTCPeerConnection-constructor.html": [ @@ -729253,11 +729526,11 @@ "support" ], "webrtc/RTCPeerConnection-iceConnectionState-disconnected.https.html": [ - "dbfc41e0c375dea0711a8cf312846cbdb27c570b", + "ff405f32851037e3880b674b4553896d36d92544", "testharness" ], "webrtc/RTCPeerConnection-iceConnectionState.https.html": [ - "a2b2827b8494af7e33e5c81b765b92041064fe6f", + "a5bf7536ff5fa8dea448010c73dcbee4ad7532ff", "testharness" ], "webrtc/RTCPeerConnection-iceGatheringState.html": [ @@ -729281,7 +729554,7 @@ "testharness" ], "webrtc/RTCPeerConnection-onsignalingstatechanged.https.html": [ - "fc3182d3d59ea5ba80cbcf022a76c4fc40f18a1a", + "c09285956dfc73fba1390343903af377181ec08a", "testharness" ], "webrtc/RTCPeerConnection-ontrack.https.html": [ @@ -729293,7 +729566,7 @@ "testharness" ], "webrtc/RTCPeerConnection-removeTrack.https.html": [ - "f2add7f0d34bada5c156cafeac399e104b2a414a", + "10b4cfb3a613d8abc508da9ed12c3c3605d32ebe", "testharness" ], "webrtc/RTCPeerConnection-restartIce-onnegotiationneeded.https.html": [ @@ -729413,7 +729686,7 @@ "testharness" ], "webrtc/RTCRtpReceiver-getContributingSources.https.html": [ - "aa59f1b910aca14b2101b063654a17d1602ba26b", + "7245d477cc8994098e1d0af2a8a5ddbf2f57620e", "testharness" ], "webrtc/RTCRtpReceiver-getParameters.html": [ @@ -729425,7 +729698,7 @@ "testharness" ], "webrtc/RTCRtpReceiver-getSynchronizationSources.https.html": [ - "a78ede0d90863dbfa458807d435a34cd9087b61f", + "8436a44ebcd227fa934ceba5488918b10d92acd3", "testharness" ], "webrtc/RTCRtpSender-getCapabilities.html": [ @@ -729449,7 +729722,7 @@ "testharness" ], "webrtc/RTCRtpSender-transport.https.html": [ - "8c0552dd68aba8c707c6cbe2c7d6f9f3c5f64f17", + "cd419ebc186b720c2a5f961451eec723ad229fa8", "testharness" ], "webrtc/RTCRtpTransceiver-direction.html": [ @@ -729465,7 +729738,7 @@ "testharness" ], "webrtc/RTCRtpTransceiver.https.html": [ - "67571895175f19c008743523f035aa31fced9681", + "36708d11ec82bfff5e55489f334a74668cb51698", "testharness" ], "webrtc/RTCSctpTransport-constructor.html": [ @@ -734256,6 +734529,18 @@ "1268f4ea2a5eb228fb49a6f06d8905f8d9480ae7", "testharness" ], + "webxr/ar-module/xrDevice_isSessionSupported_immersive-ar.https.html": [ + "2cd36a17f62243eedd9eed8efcac416f5f029d8d", + "testharness" + ], + "webxr/ar-module/xrDevice_requestSession_immersive-ar.https.html": [ + "c3fdeb34db0f65b9c0af3b79aa8adf22f799d6c6", + "testharness" + ], + "webxr/ar-module/xrSession_environmentBlendMode.https.html": [ + "da2ddc28d8dc8c4903b985dbe08f9ad034ef0f1b", + "testharness" + ], "webxr/events_input_source_recreation.https.html": [ "ecb4b022bf09410cae44b4f5a3c71bc5c054181e", "testharness" @@ -734345,7 +734630,7 @@ "support" ], "webxr/resources/webxr_test_constants.js": [ - "3d9bfa2082baa90670131774920805a7f16cd5a2", + "553a8127fcf80fd3999add61439fca4a58c5d065", "support" ], "webxr/resources/webxr_test_constants_fake_world.js": [ @@ -736705,7 +736990,7 @@ "support" ], "wpt.py": [ - "c65e1ed2c6cde4d3abd9e9a771f02542398fec49", + "affba7343eadfd1b6144febf6c0083ddd970db71", "support" ], "x-frame-options/META.yml": [ diff --git a/tests/wpt/metadata/cors/preflight-cache.htm.ini b/tests/wpt/metadata/cors/preflight-cache.htm.ini index 951b025fc02..39e05f5c64a 100644 --- a/tests/wpt/metadata/cors/preflight-cache.htm.ini +++ b/tests/wpt/metadata/cors/preflight-cache.htm.ini @@ -6,3 +6,6 @@ [preflight first request, second from cache, wait, third should preflight again] expected: FAIL + [age = blank, should be cached] + expected: FAIL + diff --git a/tests/wpt/metadata/css/CSS2/text/bidi-span-003.html.ini b/tests/wpt/metadata/css/CSS2/text/bidi-span-003.html.ini new file mode 100644 index 00000000000..a6a9aa51c11 --- /dev/null +++ b/tests/wpt/metadata/css/CSS2/text/bidi-span-003.html.ini @@ -0,0 +1,2 @@ +[bidi-span-003.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-flexbox/table-as-item-wide-content.html.ini b/tests/wpt/metadata/css/css-flexbox/table-as-item-wide-content.html.ini deleted file mode 100644 index f6def90a63b..00000000000 --- a/tests/wpt/metadata/css/css-flexbox/table-as-item-wide-content.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[table-as-item-wide-content.html] - expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/white-space/white-space-zero-fontsize-002.html.ini b/tests/wpt/metadata/css/css-text/white-space/white-space-zero-fontsize-002.html.ini new file mode 100644 index 00000000000..132bd51076f --- /dev/null +++ b/tests/wpt/metadata/css/css-text/white-space/white-space-zero-fontsize-002.html.ini @@ -0,0 +1,2 @@ +[white-space-zero-fontsize-002.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/cssom-view/CaretPosition-001.html.ini b/tests/wpt/metadata/css/cssom-view/CaretPosition-001.html.ini deleted file mode 100644 index 4c79907309b..00000000000 --- a/tests/wpt/metadata/css/cssom-view/CaretPosition-001.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[CaretPosition-001.html] - [Element at (400, 100)] - expected: FAIL - diff --git a/tests/wpt/metadata/fetch/content-type/response.window.js.ini b/tests/wpt/metadata/fetch/content-type/response.window.js.ini index 0ba07b8e86a..7807ef6db4c 100644 --- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini +++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini @@ -312,21 +312,24 @@ [fetch(): separate response Content-Type: text/plain ] expected: NOTRUN - [ + + + + + diff --git a/tests/wpt/web-platform-tests/mixed-content/generic/spec_json.js b/tests/wpt/web-platform-tests/mixed-content/generic/spec_json.js new file mode 100644 index 00000000000..2f5212e9ff7 --- /dev/null +++ b/tests/wpt/web-platform-tests/mixed-content/generic/spec_json.js @@ -0,0 +1 @@ +var SPEC_JSON = {"subresource_schema": {"supported_delivery_type": {"picture-tag": [], "worklet-layout": [], "worklet-paint": [], "img-tag": [], "a-tag": [], "worklet-layout-import-data": [], "worklet-audio-import-data": [], "worklet-animation": [], "websocket": [], "worklet-paint-import-data": [], "video-tag": [], "object-tag": [], "worklet-audio": [], "beacon": [], "worker-module": [], "worker-import-data": [], "script-tag": [], "worklet-animation-import-data": [], "link-css-tag": [], "xhr": [], "worker-classic": [], "link-prefetch-tag": [], "audio-tag": [], "fetch": []}}, "source_context_list_schema": {"worker-classic-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}, {"sourceContextType": "worker-classic-data", "policyDeliveries": []}]}, "top": {"subresourcePolicyDeliveries": [], "description": "Policy set by the top-level Document", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}]}, "worker-module-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}, {"sourceContextType": "worker-module-data", "policyDeliveries": []}]}}, "test_page_title_template": "Mixed-Content: %(title)s", "test_expansion_schema": {"delivery_value": [null, "opt-in"], "origin": ["same-https", "same-http", "cross-https", "cross-http", "same-wss", "same-ws", "cross-wss", "cross-ws"], "delivery_type": ["http-rp", "meta"], "subresource": {"blockable": ["script-tag", "link-css-tag", "xhr", "worker-classic", "worker-module", "worker-import-data", "worklet-animation", "worklet-audio", "worklet-layout", "worklet-paint", "worklet-animation-import-data", "worklet-audio-import-data", "worklet-layout-import-data", "worklet-paint-import-data", "fetch", "a-tag", "object-tag", "picture-tag", "websocket", "link-prefetch-tag", "beacon"], "optionally-blockable": ["img-tag", "audio-tag", "video-tag"]}, "expectation": ["allowed", "blocked"], "expansion": ["default", "override"], "redirection": ["no-redirect", "keep-scheme", "swap-scheme"], "source_context_list": ["top", "worker-classic-data", "worker-module-data"], "source_scheme": ["http", "https"]}, "selection_pattern": "%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s", "specification": [{"test_expansion": [{"delivery_value": "opt-in", "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "opt-in-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": [], "optionally-blockable": "*"}}, {"delivery_value": null, "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "no-opt-in-allows", "expectation": "allowed", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": [], "optionally-blockable": "*"}}], "description": "Test behavior of optionally-blockable content", "specification_url": "http://www.w3.org/TR/mixed-content/#category-optionally-blockable", "name": "optionally-blockable", "title": "Optionally-blockable content"}, {"test_expansion": [{"delivery_value": "opt-in", "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "opt-in-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "*", "optionally-blockable": []}}, {"delivery_value": null, "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "no-opt-in-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "*", "optionally-blockable": []}}, {"delivery_value": "*", "origin": ["cross-ws", "same-ws"], "delivery_type": "*", "name": "ws-downgrade-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "websocket", "optionally-blockable": []}}], "description": "Test behavior of blockable content.", "specification_url": "http://www.w3.org/TR/mixed-content/#category-blockable", "name": "blockable", "title": "Blockable content"}, {"test_expansion": [{"delivery_value": "*", "origin": ["same-https"], "delivery_type": "*", "name": "allowed", "expectation": "allowed", "expansion": "default", "redirection": ["no-redirect", "keep-scheme"], "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "*", "optionally-blockable": "*"}}, {"delivery_value": "*", "origin": ["same-wss"], "delivery_type": "*", "name": "websocket-allowed", "expectation": "allowed", "expansion": "default", "redirection": ["no-redirect", "keep-scheme"], "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "websocket", "optionally-blockable": []}}], "description": "Test behavior of allowed content.", "specification_url": "http://www.w3.org/TR/mixed-content/", "name": "allowed", "title": "Allowed content"}], "test_file_path_pattern": "gen/%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s.html", "excluded_tests": [{"delivery_value": null, "origin": "*", "delivery_type": "http-rp", "name": "Skip-redundant-no-opt-in", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": "*", "optionally-blockable": "*"}}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "Redundant-subresources", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": ["a-tag"], "optionally-blockable": []}}, {"delivery_value": "*", "origin": ["same-https", "same-http", "cross-https", "cross-http"], "delivery_type": "*", "name": "Skip-origins-not-applicable-to-websockets", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": ["websocket"], "optionally-blockable": []}}, {"delivery_value": "opt-in", "origin": "*", "delivery_type": "meta", "name": "Skip-redundant-for-opt-in-method", "expectation": "*", "expansion": "*", "redirection": ["keep-scheme", "swap-scheme"], "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": "*", "optionally-blockable": "*"}}], "delivery_key": "mixedContent", "test_description_template": "Mixed-Content: Expects %(expectation)s for %(subresource)s to %(origin)s origin and %(redirection)s redirection from %(source_scheme)s context.", "source_context_schema": {"supported_delivery_type": {"iframe": ["http-rp", "meta"], "worker-module-data": [], "worker-classic-data": [], "top": ["http-rp", "meta"], "worker-classic": ["http-rp"], "iframe-blank": ["meta"], "worker-module": ["http-rp"], "srcdoc": ["meta"]}, "supported_subresource": {"iframe": "*", "worker-module-data": ["xhr", "fetch", "websocket"], "worker-classic-data": ["xhr", "fetch", "websocket"], "top": "*", "worker-classic": ["xhr", "fetch", "websocket"], "iframe-blank": "*", "worker-module": ["xhr", "fetch", "websocket"], "srcdoc": "*"}}}; diff --git a/tests/wpt/web-platform-tests/mixed-content/generic/tools/generate.py b/tests/wpt/web-platform-tests/mixed-content/generic/tools/generate.py deleted file mode 100755 index 060bdabf91c..00000000000 --- a/tests/wpt/web-platform-tests/mixed-content/generic/tools/generate.py +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env python - -import os -import sys - -sys.path.insert( - 0, - os.path.join( - os.path.dirname(os.path.abspath(__file__)), '..', '..', '..', 'common', - 'security-features', 'tools')) -import generate - - -class MixedContentConfig(object): - def __init__(self): - self.selection_pattern = \ - '%(source_context_list)s.%(delivery_type)s/' + \ - '%(delivery_value)s/' + \ - '%(subresource)s/' + \ - '%(origin)s.%(redirection)s.%(source_scheme)s' - - self.test_file_path_pattern = 'gen/' + self.selection_pattern + '.html' - - self.test_description_template = 'Mixed-Content: Expects %(expectation)s for %(subresource)s to %(origin)s origin and %(redirection)s redirection from %(source_scheme)s context.' - - self.test_page_title_template = 'Mixed-Content: %s' - - self.helper_js = '/mixed-content/generic/test-case.sub.js' - - # For debug target only. - self.sanity_checker_js = '/mixed-content/generic/sanity-checker.js' - self.spec_json_js = '/mixed-content/spec_json.js' - - script_directory = os.path.dirname(os.path.abspath(__file__)) - self.spec_directory = os.path.abspath( - os.path.join(script_directory, '..', '..')) - - -if __name__ == '__main__': - generate.main(MixedContentConfig()) diff --git a/tests/wpt/web-platform-tests/mixed-content/spec.src.json b/tests/wpt/web-platform-tests/mixed-content/spec.src.json index c272bb3f642..8ece6de3ffd 100644 --- a/tests/wpt/web-platform-tests/mixed-content/spec.src.json +++ b/tests/wpt/web-platform-tests/mixed-content/spec.src.json @@ -1,4 +1,8 @@ { + "selection_pattern": "%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s", + "test_file_path_pattern": "gen/%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s.html", + "test_description_template": "Mixed-Content: Expects %(expectation)s for %(subresource)s to %(origin)s origin and %(redirection)s redirection from %(source_scheme)s context.", + "test_page_title_template": "Mixed-Content: %(title)s", "specification": [ { "name": "optionally-blockable", diff --git a/tests/wpt/web-platform-tests/mixed-content/spec_json.js b/tests/wpt/web-platform-tests/mixed-content/spec_json.js deleted file mode 100644 index 00428b1fa5e..00000000000 --- a/tests/wpt/web-platform-tests/mixed-content/spec_json.js +++ /dev/null @@ -1 +0,0 @@ -var SPEC_JSON = {"subresource_schema": {"supported_delivery_type": {"picture-tag": [], "worklet-layout": [], "worklet-paint": [], "img-tag": [], "a-tag": [], "worklet-layout-import-data": [], "worklet-audio-import-data": [], "worklet-animation": [], "websocket": [], "worklet-paint-import-data": [], "video-tag": [], "object-tag": [], "worklet-audio": [], "beacon": [], "worker-module": [], "worker-import-data": [], "script-tag": [], "worklet-animation-import-data": [], "link-css-tag": [], "xhr": [], "worker-classic": [], "link-prefetch-tag": [], "audio-tag": [], "fetch": []}}, "excluded_tests": [{"delivery_value": null, "origin": "*", "delivery_type": "http-rp", "name": "Skip-redundant-no-opt-in", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": "*", "optionally-blockable": "*"}}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "Redundant-subresources", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": ["a-tag"], "optionally-blockable": []}}, {"delivery_value": "*", "origin": ["same-https", "same-http", "cross-https", "cross-http"], "delivery_type": "*", "name": "Skip-origins-not-applicable-to-websockets", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": ["websocket"], "optionally-blockable": []}}, {"delivery_value": "opt-in", "origin": "*", "delivery_type": "meta", "name": "Skip-redundant-for-opt-in-method", "expectation": "*", "expansion": "*", "redirection": ["keep-scheme", "swap-scheme"], "source_context_list": "*", "source_scheme": "*", "subresource": {"blockable": "*", "optionally-blockable": "*"}}], "specification": [{"test_expansion": [{"delivery_value": "opt-in", "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "opt-in-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": [], "optionally-blockable": "*"}}, {"delivery_value": null, "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "no-opt-in-allows", "expectation": "allowed", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": [], "optionally-blockable": "*"}}], "description": "Test behavior of optionally-blockable content", "specification_url": "http://www.w3.org/TR/mixed-content/#category-optionally-blockable", "name": "optionally-blockable", "title": "Optionally-blockable content"}, {"test_expansion": [{"delivery_value": "opt-in", "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "opt-in-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "*", "optionally-blockable": []}}, {"delivery_value": null, "origin": ["cross-http", "same-http"], "delivery_type": "*", "name": "no-opt-in-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "*", "optionally-blockable": []}}, {"delivery_value": "*", "origin": ["cross-ws", "same-ws"], "delivery_type": "*", "name": "ws-downgrade-blocks", "expectation": "blocked", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "websocket", "optionally-blockable": []}}], "description": "Test behavior of blockable content.", "specification_url": "http://www.w3.org/TR/mixed-content/#category-blockable", "name": "blockable", "title": "Blockable content"}, {"test_expansion": [{"delivery_value": "*", "origin": ["same-https"], "delivery_type": "*", "name": "allowed", "expectation": "allowed", "expansion": "default", "redirection": ["no-redirect", "keep-scheme"], "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "*", "optionally-blockable": "*"}}, {"delivery_value": "*", "origin": ["same-wss"], "delivery_type": "*", "name": "websocket-allowed", "expectation": "allowed", "expansion": "default", "redirection": ["no-redirect", "keep-scheme"], "source_context_list": "*", "source_scheme": "https", "subresource": {"blockable": "websocket", "optionally-blockable": []}}], "description": "Test behavior of allowed content.", "specification_url": "http://www.w3.org/TR/mixed-content/", "name": "allowed", "title": "Allowed content"}], "test_expansion_schema": {"delivery_value": [null, "opt-in"], "origin": ["same-https", "same-http", "cross-https", "cross-http", "same-wss", "same-ws", "cross-wss", "cross-ws"], "delivery_type": ["http-rp", "meta"], "subresource": {"blockable": ["script-tag", "link-css-tag", "xhr", "worker-classic", "worker-module", "worker-import-data", "worklet-animation", "worklet-audio", "worklet-layout", "worklet-paint", "worklet-animation-import-data", "worklet-audio-import-data", "worklet-layout-import-data", "worklet-paint-import-data", "fetch", "a-tag", "object-tag", "picture-tag", "websocket", "link-prefetch-tag", "beacon"], "optionally-blockable": ["img-tag", "audio-tag", "video-tag"]}, "expectation": ["allowed", "blocked"], "expansion": ["default", "override"], "redirection": ["no-redirect", "keep-scheme", "swap-scheme"], "source_context_list": ["top", "worker-classic-data", "worker-module-data"], "source_scheme": ["http", "https"]}, "source_context_list_schema": {"worker-classic-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}, {"sourceContextType": "worker-classic-data", "policyDeliveries": []}]}, "top": {"subresourcePolicyDeliveries": [], "description": "Policy set by the top-level Document", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}]}, "worker-module-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}, {"sourceContextType": "worker-module-data", "policyDeliveries": []}]}}, "delivery_key": "mixedContent", "source_context_schema": {"supported_delivery_type": {"iframe": ["http-rp", "meta"], "worker-module-data": [], "worker-classic-data": [], "top": ["http-rp", "meta"], "worker-classic": ["http-rp"], "iframe-blank": ["meta"], "worker-module": ["http-rp"], "srcdoc": ["meta"]}, "supported_subresource": {"iframe": "*", "worker-module-data": ["xhr", "fetch", "websocket"], "worker-classic-data": ["xhr", "fetch", "websocket"], "top": "*", "worker-classic": ["xhr", "fetch", "websocket"], "iframe-blank": "*", "worker-module": ["xhr", "fetch", "websocket"], "srcdoc": "*"}}}; diff --git a/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/removing-allowpaymentrequest.https.sub.html b/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/removing-allowpaymentrequest.https.sub.html index b0e0cbacbf2..64baebb5024 100644 --- a/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/removing-allowpaymentrequest.https.sub.html +++ b/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/removing-allowpaymentrequest.https.sub.html @@ -27,6 +27,9 @@ async_test((t) => { }); window.onmessage = t.step_func((e) => { + // Ignore messages that are not part of the test. + if (e.source != iframe.contentWindow) return; + i++; if (i === 1) { // 5. This is the first message we receive, from the first load. diff --git a/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest-timing.https.sub.html b/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest-timing.https.sub.html index 45661de7e0d..a741296d5da 100644 --- a/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest-timing.https.sub.html +++ b/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest-timing.https.sub.html @@ -22,11 +22,15 @@ async_test((t) => { iframe.contentWindow.postMessage('What is the result of new PaymentRequest(...)?', '*'); }); - window.onmessage = t.step_func_done((e) => { + window.onmessage = t.step_func((e) => { + // Ignore messages that are not part of the test. + if (e.source != iframe.contentWindow) return; + assert_equals(e.data.message, 'Exception'); assert_equals(4, e.data.details.length); // The last entry is the error stacktrace. Ignore it in comparison. assert_array_equals(e.data.details.slice(0, 3), [true /* ex instanceof DOMException */, DOMException.SECURITY_ERR, 'SecurityError']); + t.done(); }); document.body.appendChild(iframe); diff --git a/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest.https.sub.html b/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest.https.sub.html index 06f0c8479da..c1d53a4bc26 100644 --- a/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest.https.sub.html +++ b/tests/wpt/web-platform-tests/payment-request/allowpaymentrequest/setting-allowpaymentrequest.https.sub.html @@ -20,6 +20,9 @@ async_test((t) => { }); window.onmessage = t.step_func((e) => { + // Ignore messages that are not part of the test. + if (e.source != iframe.contentWindow) return; + i++; if (i === 1) { assert_equals(e.data.message, 'Exception', 'before navigation'); diff --git a/tests/wpt/web-platform-tests/referrer-policy/generic/spec_json.js b/tests/wpt/web-platform-tests/referrer-policy/generic/spec_json.js new file mode 100644 index 00000000000..cad5e79f1f8 --- /dev/null +++ b/tests/wpt/web-platform-tests/referrer-policy/generic/spec_json.js @@ -0,0 +1 @@ +var SPEC_JSON = {"subresource_schema": {"supported_delivery_type": {"img-tag": ["attr"], "sharedworker-classic": [], "xhr": [], "a-tag": ["attr", "rel-noref"], "area-tag": ["attr"], "iframe-tag": ["attr"], "worker-module": [], "script-tag": ["attr"], "fetch": [], "worker-classic": []}}, "source_context_list_schema": {"srcdoc-inherit": {"subresourcePolicyDeliveries": [], "description": "srcdoc iframe should inherit parent Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}, {"sourceContextType": "srcdoc"}]}, "worker-module": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-module", "policyDeliveries": ["policy"]}]}, "worker-module-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-module-data", "policyDeliveries": ["policy"]}]}, "worker-classic-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-classic-data", "policyDeliveries": ["policy"]}]}, "top": {"subresourcePolicyDeliveries": [], "description": "Policy set by the top-level Document", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}]}, "req": {"subresourcePolicyDeliveries": ["nonNullPolicy"], "description": "Subresource request's policy should override Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}]}, "worker-classic": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-classic", "policyDeliveries": ["policy"]}]}, "iframe": {"subresourcePolicyDeliveries": [], "description": "external iframe's policy should override parent Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "iframe", "policyDeliveries": ["policy"]}]}, "srcdoc": {"subresourcePolicyDeliveries": [], "description": "srcdoc iframe's policy should override parent Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "srcdoc", "policyDeliveries": ["nonNullPolicy"]}]}}, "test_page_title_template": "Referrer-Policy: %(title)s", "test_expansion_schema": {"delivery_value": [null, "no-referrer", "no-referrer-when-downgrade", "same-origin", "origin", "origin-when-cross-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"], "origin": ["same-http", "same-https", "cross-http", "cross-https"], "delivery_type": ["attr", "rel-noref", "http-rp", "meta"], "subresource": ["iframe-tag", "img-tag", "script-tag", "a-tag", "area-tag", "xhr", "worker-classic", "worker-module", "sharedworker-classic", "fetch"], "expectation": ["omitted", "origin", "stripped-referrer"], "expansion": ["default", "override"], "redirection": ["no-redirect", "keep-origin", "swap-origin"], "source_context_list": ["top", "req", "srcdoc-inherit", "srcdoc", "iframe", "worker-classic", "worker-classic-data", "worker-module", "worker-module-data"], "source_scheme": ["http", "https"]}, "selection_pattern": "%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s", "specification": [{"test_expansion": [{"delivery_value": null, "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "insecure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": null, "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": null, "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": null, "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "secure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that referrer URL follows no-referrer-when-downgrade policy when no explicit Referrer Policy is set.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policies", "name": "unset-referrer-policy", "title": "Referrer Policy is not explicitly defined"}, {"test_expansion": [{"delivery_value": "no-referrer", "origin": "*", "delivery_type": "*", "name": "generic", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that sub-resource never gets the referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-no-referrer", "name": "no-referrer", "title": "Referrer Policy is set to 'no-referrer'"}, {"test_expansion": [{"delivery_value": "no-referrer-when-downgrade", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "insecure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "no-referrer-when-downgrade", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "no-referrer-when-downgrade", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "no-referrer-when-downgrade", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "secure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that non a priori insecure subresource gets the full Referrer URL. A priori insecure subresource gets no referrer information.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-no-referrer-when-downgrade", "name": "no-referrer-when-downgrade", "title": "Referrer Policy is set to 'no-referrer-when-downgrade'"}, {"test_expansion": [{"delivery_value": "origin", "origin": "*", "delivery_type": "*", "name": "generic", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that all subresources in all casses get only the origin portion of the referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-origin", "name": "origin", "title": "Referrer Policy is set to 'origin'"}, {"test_expansion": [{"delivery_value": "same-origin", "origin": "same-http", "delivery_type": "*", "name": "same-origin-insecure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "same-origin", "origin": "same-https", "delivery_type": "*", "name": "same-origin-secure-default", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "same-origin", "origin": ["same-http", "same-https"], "delivery_type": "*", "name": "same-origin-insecure", "expectation": "omitted", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}, {"delivery_value": "same-origin", "origin": ["cross-http", "cross-https"], "delivery_type": "*", "name": "cross-origin", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that cross-origin subresources get no referrer information and same-origin get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-same-origin", "name": "same-origin", "title": "Referrer Policy is set to 'same-origin'"}, {"test_expansion": [{"delivery_value": "origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-origin-insecure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-origin-secure-default", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-origin-upgrade", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-origin-downgrade", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": ["same-http", "same-https"], "delivery_type": "*", "name": "same-origin-insecure", "expectation": "origin", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": ["cross-http", "cross-https"], "delivery_type": "*", "name": "cross-origin", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that cross-origin subresources get the origin portion of the referrer URL and same-origin get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-origin-when-cross-origin", "name": "origin-when-cross-origin", "title": "Referrer Policy is set to 'origin-when-cross-origin'"}, {"test_expansion": [{"delivery_value": "strict-origin", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "insecure-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "secure-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that non a priori insecure subresource gets only the origin portion of the referrer URL. A priori insecure subresource gets no referrer information.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-strict-origin", "name": "strict-origin", "title": "Referrer Policy is set to 'strict-origin'"}, {"test_expansion": [{"delivery_value": "strict-origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-insecure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-insecure", "expectation": "origin", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "cross-http", "delivery_type": "*", "name": "cross-insecure", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-secure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-secure", "expectation": "origin", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "cross-https", "delivery_type": "*", "name": "cross-secure", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that a priori insecure subresource gets no referrer information. Otherwise, cross-origin subresources get the origin portion of the referrer URL and same-origin get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-strict-origin-when-cross-origin", "name": "strict-origin-when-cross-origin", "title": "Referrer Policy is set to 'strict-origin-when-cross-origin'"}, {"test_expansion": [{"delivery_value": "unsafe-url", "origin": "*", "delivery_type": "*", "name": "generic", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that all sub-resources get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-unsafe-url", "name": "unsafe-url", "title": "Referrer Policy is set to 'unsafe-url'"}], "test_file_path_pattern": "gen/%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s.html", "excluded_tests": [{"delivery_value": "*", "origin": ["cross-http", "cross-https"], "delivery_type": "*", "name": "cross-origin-workers", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": ["worker-classic", "worker-module", "sharedworker-classic"]}, {"delivery_value": "*", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgraded-protocol-workers", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": ["worker-classic", "worker-module", "sharedworker-classic"]}, {"delivery_value": "*", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "mixed-content-insecure-subresources", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "area-tag", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "area-tag"}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "worker-requests-with-swap-origin-redirect", "expectation": "*", "expansion": "*", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "*", "subresource": ["worker-classic", "worker-module", "sharedworker-classic"]}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "overhead-for-redirection", "expectation": "*", "expansion": "*", "redirection": ["keep-origin", "swap-origin"], "source_context_list": "*", "source_scheme": "*", "subresource": ["a-tag", "area-tag"]}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "source-https-unsupported-by-web-platform-tests-runners", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": [null, "no-referrer-when-downgrade", "same-origin", "origin", "origin-when-cross-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"], "origin": "*", "delivery_type": "rel-noref", "name": "'s delivery_value should be no-referrer", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "delivery_key": "referrerPolicy", "test_description_template": "Referrer Policy: Expects %(expectation)s for %(subresource)s to %(origin)s origin and %(redirection)s redirection from %(source_scheme)s context.", "source_context_schema": {"supported_delivery_type": {"iframe": ["meta", "http-rp"], "worker-module-data": [], "worker-classic-data": [], "top": ["meta", "http-rp"], "worker-classic": ["http-rp"], "iframe-blank": ["meta"], "worker-module": ["http-rp"], "srcdoc": ["meta"]}, "supported_subresource": {"iframe": "*", "worker-module-data": ["xhr", "fetch"], "worker-classic-data": ["xhr", "fetch"], "top": "*", "worker-classic": ["xhr", "fetch", "worker-classic", "worker-module"], "iframe-blank": "*", "worker-module": ["xhr", "fetch", "worker-classic", "worker-module"], "srcdoc": "*"}}}; diff --git a/tests/wpt/web-platform-tests/referrer-policy/generic/tools/generate.py b/tests/wpt/web-platform-tests/referrer-policy/generic/tools/generate.py deleted file mode 100755 index 7cace61c0f0..00000000000 --- a/tests/wpt/web-platform-tests/referrer-policy/generic/tools/generate.py +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env python - -import os -import sys - -sys.path.insert( - 0, - os.path.join( - os.path.dirname(os.path.abspath(__file__)), '..', '..', '..', 'common', - 'security-features', 'tools')) -import generate - - -class ReferrerPolicyConfig(object): - def __init__(self): - self.selection_pattern = \ - '%(source_context_list)s.%(delivery_type)s/' + \ - '%(delivery_value)s/' + \ - '%(subresource)s/' + \ - '%(origin)s.%(redirection)s.%(source_scheme)s' - - self.test_file_path_pattern = 'gen/' + self.selection_pattern + '.html' - - self.test_description_template = 'Referrer Policy: Expects %(expectation)s for %(subresource)s to %(origin)s origin and %(redirection)s redirection from %(source_scheme)s context.' - - self.test_page_title_template = 'Referrer-Policy: %s' - - self.helper_js = '/referrer-policy/generic/test-case.sub.js' - - # For debug target only. - self.sanity_checker_js = '/referrer-policy/generic/sanity-checker.js' - self.spec_json_js = '/referrer-policy/spec_json.js' - - script_directory = os.path.dirname(os.path.abspath(__file__)) - self.spec_directory = os.path.abspath( - os.path.join(script_directory, '..', '..')) - - -if __name__ == '__main__': - generate.main(ReferrerPolicyConfig()) diff --git a/tests/wpt/web-platform-tests/referrer-policy/spec.src.json b/tests/wpt/web-platform-tests/referrer-policy/spec.src.json index 2674a45d6db..b0e07eb1328 100644 --- a/tests/wpt/web-platform-tests/referrer-policy/spec.src.json +++ b/tests/wpt/web-platform-tests/referrer-policy/spec.src.json @@ -1,4 +1,8 @@ { + "selection_pattern": "%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s", + "test_file_path_pattern": "gen/%(source_context_list)s.%(delivery_type)s/%(delivery_value)s/%(subresource)s/%(origin)s.%(redirection)s.%(source_scheme)s.html", + "test_description_template": "Referrer Policy: Expects %(expectation)s for %(subresource)s to %(origin)s origin and %(redirection)s redirection from %(source_scheme)s context.", + "test_page_title_template": "Referrer-Policy: %(title)s", "specification": [ { "name": "unset-referrer-policy", diff --git a/tests/wpt/web-platform-tests/referrer-policy/spec_json.js b/tests/wpt/web-platform-tests/referrer-policy/spec_json.js deleted file mode 100644 index 8a15eaee1eb..00000000000 --- a/tests/wpt/web-platform-tests/referrer-policy/spec_json.js +++ /dev/null @@ -1 +0,0 @@ -var SPEC_JSON = {"subresource_schema": {"supported_delivery_type": {"img-tag": ["attr"], "sharedworker-classic": [], "xhr": [], "a-tag": ["attr", "rel-noref"], "area-tag": ["attr"], "iframe-tag": ["attr"], "worker-module": [], "script-tag": ["attr"], "fetch": [], "worker-classic": []}}, "excluded_tests": [{"delivery_value": "*", "origin": ["cross-http", "cross-https"], "delivery_type": "*", "name": "cross-origin-workers", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": ["worker-classic", "worker-module", "sharedworker-classic"]}, {"delivery_value": "*", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgraded-protocol-workers", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": ["worker-classic", "worker-module", "sharedworker-classic"]}, {"delivery_value": "*", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "mixed-content-insecure-subresources", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "area-tag", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "area-tag"}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "worker-requests-with-swap-origin-redirect", "expectation": "*", "expansion": "*", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "*", "subresource": ["worker-classic", "worker-module", "sharedworker-classic"]}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "overhead-for-redirection", "expectation": "*", "expansion": "*", "redirection": ["keep-origin", "swap-origin"], "source_context_list": "*", "source_scheme": "*", "subresource": ["a-tag", "area-tag"]}, {"delivery_value": "*", "origin": "*", "delivery_type": "*", "name": "source-https-unsupported-by-web-platform-tests-runners", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": [null, "no-referrer-when-downgrade", "same-origin", "origin", "origin-when-cross-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"], "origin": "*", "delivery_type": "rel-noref", "name": "'s delivery_value should be no-referrer", "expectation": "*", "expansion": "*", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "specification": [{"test_expansion": [{"delivery_value": null, "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "insecure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": null, "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": null, "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": null, "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "secure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that referrer URL follows no-referrer-when-downgrade policy when no explicit Referrer Policy is set.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policies", "name": "unset-referrer-policy", "title": "Referrer Policy is not explicitly defined"}, {"test_expansion": [{"delivery_value": "no-referrer", "origin": "*", "delivery_type": "*", "name": "generic", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that sub-resource never gets the referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-no-referrer", "name": "no-referrer", "title": "Referrer Policy is set to 'no-referrer'"}, {"test_expansion": [{"delivery_value": "no-referrer-when-downgrade", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "insecure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "no-referrer-when-downgrade", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "no-referrer-when-downgrade", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "no-referrer-when-downgrade", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "secure-protocol", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that non a priori insecure subresource gets the full Referrer URL. A priori insecure subresource gets no referrer information.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-no-referrer-when-downgrade", "name": "no-referrer-when-downgrade", "title": "Referrer Policy is set to 'no-referrer-when-downgrade'"}, {"test_expansion": [{"delivery_value": "origin", "origin": "*", "delivery_type": "*", "name": "generic", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that all subresources in all casses get only the origin portion of the referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-origin", "name": "origin", "title": "Referrer Policy is set to 'origin'"}, {"test_expansion": [{"delivery_value": "same-origin", "origin": "same-http", "delivery_type": "*", "name": "same-origin-insecure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "same-origin", "origin": "same-https", "delivery_type": "*", "name": "same-origin-secure-default", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "same-origin", "origin": ["same-http", "same-https"], "delivery_type": "*", "name": "same-origin-insecure", "expectation": "omitted", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}, {"delivery_value": "same-origin", "origin": ["cross-http", "cross-https"], "delivery_type": "*", "name": "cross-origin", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that cross-origin subresources get no referrer information and same-origin get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-same-origin", "name": "same-origin", "title": "Referrer Policy is set to 'same-origin'"}, {"test_expansion": [{"delivery_value": "origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-origin-insecure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-origin-secure-default", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-origin-upgrade", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-origin-downgrade", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": ["same-http", "same-https"], "delivery_type": "*", "name": "same-origin-insecure", "expectation": "origin", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}, {"delivery_value": "origin-when-cross-origin", "origin": ["cross-http", "cross-https"], "delivery_type": "*", "name": "cross-origin", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that cross-origin subresources get the origin portion of the referrer URL and same-origin get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-origin-when-cross-origin", "name": "origin-when-cross-origin", "title": "Referrer Policy is set to 'origin-when-cross-origin'"}, {"test_expansion": [{"delivery_value": "strict-origin", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "insecure-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "secure-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that non a priori insecure subresource gets only the origin portion of the referrer URL. A priori insecure subresource gets no referrer information.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-strict-origin", "name": "strict-origin", "title": "Referrer Policy is set to 'strict-origin'"}, {"test_expansion": [{"delivery_value": "strict-origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-insecure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "same-http", "delivery_type": "*", "name": "same-insecure", "expectation": "origin", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "cross-http", "delivery_type": "*", "name": "cross-insecure", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": ["same-https", "cross-https"], "delivery_type": "*", "name": "upgrade-protocol", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "http", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": ["same-http", "cross-http"], "delivery_type": "*", "name": "downgrade-protocol", "expectation": "omitted", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-secure", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "same-https", "delivery_type": "*", "name": "same-secure", "expectation": "origin", "expansion": "override", "redirection": "swap-origin", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}, {"delivery_value": "strict-origin-when-cross-origin", "origin": "cross-https", "delivery_type": "*", "name": "cross-secure", "expectation": "origin", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "https", "subresource": "*"}], "description": "Check that a priori insecure subresource gets no referrer information. Otherwise, cross-origin subresources get the origin portion of the referrer URL and same-origin get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-strict-origin-when-cross-origin", "name": "strict-origin-when-cross-origin", "title": "Referrer Policy is set to 'strict-origin-when-cross-origin'"}, {"test_expansion": [{"delivery_value": "unsafe-url", "origin": "*", "delivery_type": "*", "name": "generic", "expectation": "stripped-referrer", "expansion": "default", "redirection": "*", "source_context_list": "*", "source_scheme": "*", "subresource": "*"}], "description": "Check that all sub-resources get the stripped referrer URL.", "specification_url": "https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-unsafe-url", "name": "unsafe-url", "title": "Referrer Policy is set to 'unsafe-url'"}], "test_expansion_schema": {"delivery_value": [null, "no-referrer", "no-referrer-when-downgrade", "same-origin", "origin", "origin-when-cross-origin", "strict-origin", "strict-origin-when-cross-origin", "unsafe-url"], "origin": ["same-http", "same-https", "cross-http", "cross-https"], "delivery_type": ["attr", "rel-noref", "http-rp", "meta"], "subresource": ["iframe-tag", "img-tag", "script-tag", "a-tag", "area-tag", "xhr", "worker-classic", "worker-module", "sharedworker-classic", "fetch"], "expectation": ["omitted", "origin", "stripped-referrer"], "expansion": ["default", "override"], "redirection": ["no-redirect", "keep-origin", "swap-origin"], "source_context_list": ["top", "req", "srcdoc-inherit", "srcdoc", "iframe", "worker-classic", "worker-classic-data", "worker-module", "worker-module-data"], "source_scheme": ["http", "https"]}, "source_context_list_schema": {"srcdoc-inherit": {"subresourcePolicyDeliveries": [], "description": "srcdoc iframe should inherit parent Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}, {"sourceContextType": "srcdoc"}]}, "worker-module": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-module", "policyDeliveries": ["policy"]}]}, "worker-module-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-module-data", "policyDeliveries": ["policy"]}]}, "worker-classic-data": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-classic-data", "policyDeliveries": ["policy"]}]}, "top": {"subresourcePolicyDeliveries": [], "description": "Policy set by the top-level Document", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["policy"]}]}, "req": {"subresourcePolicyDeliveries": ["nonNullPolicy"], "description": "Subresource request's policy should override Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}]}, "worker-classic": {"subresourcePolicyDeliveries": [], "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "worker-classic", "policyDeliveries": ["policy"]}]}, "iframe": {"subresourcePolicyDeliveries": [], "description": "external iframe's policy should override parent Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "iframe", "policyDeliveries": ["policy"]}]}, "srcdoc": {"subresourcePolicyDeliveries": [], "description": "srcdoc iframe's policy should override parent Document's policy", "sourceContextList": [{"sourceContextType": "top", "policyDeliveries": ["anotherPolicy"]}, {"sourceContextType": "srcdoc", "policyDeliveries": ["nonNullPolicy"]}]}}, "delivery_key": "referrerPolicy", "source_context_schema": {"supported_delivery_type": {"iframe": ["meta", "http-rp"], "worker-module-data": [], "worker-classic-data": [], "top": ["meta", "http-rp"], "worker-classic": ["http-rp"], "iframe-blank": ["meta"], "worker-module": ["http-rp"], "srcdoc": ["meta"]}, "supported_subresource": {"iframe": "*", "worker-module-data": ["xhr", "fetch"], "worker-classic-data": ["xhr", "fetch"], "top": "*", "worker-classic": ["xhr", "fetch", "worker-classic", "worker-module"], "iframe-blank": "*", "worker-module": ["xhr", "fetch", "worker-classic", "worker-module"], "srcdoc": "*"}}}; diff --git a/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js b/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js index b45ff20dbc4..54788b4ca3d 100644 --- a/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js +++ b/tests/wpt/web-platform-tests/resources/chromium/webxr-test.js @@ -891,6 +891,11 @@ class MockXRInputSource { case 'tracked-pointer': input_desc.targetRayMode = device.mojom.XRTargetRayMode.POINTING; break; + case 'screen': + input_desc.targetRayMode = device.mojom.XRTargetRayMode.TAPPING; + break; + default: + throw new Error('Unhandled target ray mode ' + this.target_ray_mode_); } switch (this.handedness_) { diff --git a/tests/wpt/web-platform-tests/resources/test/conftest.py b/tests/wpt/web-platform-tests/resources/test/conftest.py index 857f1b41bcb..a9f4203f279 100644 --- a/tests/wpt/web-platform-tests/resources/test/conftest.py +++ b/tests/wpt/web-platform-tests/resources/test/conftest.py @@ -2,11 +2,12 @@ import copy import json import os import ssl +import sys +import subprocess import html5lib import py import pytest -from selenium import webdriver from six import text_type from six.moves import urllib @@ -18,6 +19,9 @@ HARNESS = os.path.join(HERE, 'harness.html') TEST_TYPES = ('functional', 'unit') DEFAULT_VARIANTS = ["?default"] +sys.path.insert(0, os.path.normpath(os.path.join(WPT_ROOT, "tools", "webdriver"))) +import webdriver + def pytest_addoption(parser): parser.addoption("--binary", action="store", default=None, help="path to browser binary") @@ -38,8 +42,16 @@ def pytest_collect_file(path, parent): def pytest_configure(config): - config.driver = webdriver.Firefox(firefox_binary=config.getoption("--binary")) - config.add_cleanup(config.driver.quit) + config.proc = subprocess.Popen(["geckodriver"]) + config.add_cleanup(config.proc.kill) + + capabilities = {"alwaysMatch": {"acceptInsecureCerts": True}} + if config.getoption("--binary"): + capabilities["alwaysMatch"]["moz:firefoxOptions"] = {"binary": config.getoption("--binary")} + + config.driver = webdriver.Session("localhost", 4444, + capabilities=capabilities) + config.add_cleanup(config.driver.end) config.server = WPTServer(WPT_ROOT) config.server.start() @@ -149,7 +161,7 @@ class HTMLItem(pytest.Item, pytest.Collector): driver = self.session.config.driver server = self.session.config.server - driver.get(server.url(HARNESS)) + driver.url = server.url(HARNESS) actual = driver.execute_async_script( 'runTest("%s", "foo", arguments[0])' % self.url @@ -172,7 +184,7 @@ class HTMLItem(pytest.Item, pytest.Collector): driver = self.session.config.driver server = self.session.config.server - driver.get(server.url(HARNESS)) + driver.url = server.url(HARNESS) test_url = self.url + variant actual = driver.execute_async_script('runTest("%s", "foo", arguments[0])' % test_url) diff --git a/tests/wpt/web-platform-tests/resources/test/tox.ini b/tests/wpt/web-platform-tests/resources/test/tox.ini index d0c5186f156..a7a02e4b93b 100644 --- a/tests/wpt/web-platform-tests/resources/test/tox.ini +++ b/tests/wpt/web-platform-tests/resources/test/tox.ini @@ -10,7 +10,6 @@ deps = html5lib pytest>=2.9 pyvirtualdisplay - selenium six requests diff --git a/tests/wpt/web-platform-tests/tools/serve/serve.py b/tests/wpt/web-platform-tests/tools/serve/serve.py index 1868b1a36e5..f33846bc24c 100644 --- a/tests/wpt/web-platform-tests/tools/serve/serve.py +++ b/tests/wpt/web-platform-tests/tools/serve/serve.py @@ -351,7 +351,7 @@ class RoutesBuilder(object): if headers is None: headers = {} handler = handlers.StaticHandler(path, format_args, content_type, **headers) - self.add_handler(b"GET", str(route), handler) + self.add_handler("GET", str(route), handler) def add_mount_point(self, url_base, path): url_base = "/%s/" % url_base.strip("/") if url_base != "/" else "/" diff --git a/tests/wpt/web-platform-tests/tools/wpt/browser.py b/tests/wpt/web-platform-tests/tools/wpt/browser.py index 3ee98d959ec..6dd2f5c4c90 100644 --- a/tests/wpt/web-platform-tests/tools/wpt/browser.py +++ b/tests/wpt/web-platform-tests/tools/wpt/browser.py @@ -6,14 +6,14 @@ import stat import errno import subprocess import tempfile -import urlparse from abc import ABCMeta, abstractmethod from datetime import datetime, timedelta from distutils.spawn import find_executable +from six.moves.urllib.parse import urlsplit import requests -from utils import call, get, untar, unzip +from .utils import call, get, untar, unzip uname = platform.uname() @@ -172,7 +172,7 @@ class Firefox(Browser): filename = filenames[0] if not filename: - filename = urlparse.urlsplit(resp.url).path.rsplit("/", 1)[1] + filename = urlsplit(resp.url).path.rsplit("/", 1)[1] if not filename: filename = "firefox.tar.bz2" diff --git a/tests/wpt/web-platform-tests/tools/wpt/install.py b/tests/wpt/web-platform-tests/tools/wpt/install.py index 24915f0c98d..3da697e5333 100644 --- a/tests/wpt/web-platform-tests/tools/wpt/install.py +++ b/tests/wpt/web-platform-tests/tools/wpt/install.py @@ -1,6 +1,6 @@ import argparse -import browser import sys +from . import browser latest_channels = { diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/requirements.txt b/tests/wpt/web-platform-tests/tools/wptrunner/requirements.txt index 3cd01446e25..74a358ed10b 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/requirements.txt +++ b/tests/wpt/web-platform-tests/tools/wptrunner/requirements.txt @@ -2,7 +2,8 @@ html5lib==1.0.1 mozinfo==1.1.0 mozlog==5.0 mozdebug==0.1.1 -pillow==6.2.1 +# Pillow 7 requires Python 3 +pillow==6.2.1 # pyup: <7.0 urllib3[secure]==1.25.7 requests==2.22.0 six==1.13.0 diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/environment.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/environment.py index 7dcea4aeafa..608b24dfd3a 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/environment.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/environment.py @@ -192,7 +192,7 @@ class TestEnvironment(object): data += fp.read() with open(os.path.join(here, "testdriver-extra.js"), "rb") as fp: data += fp.read() - route_builder.add_handler(b"GET", b"/resources/testdriver.js", + route_builder.add_handler("GET", "/resources/testdriver.js", StringHandler(data, "text/javascript")) for url_base, paths in iteritems(self.test_paths): diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py index 01306397db7..837329fccb7 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executormarionette.py @@ -3,9 +3,10 @@ import os import threading import time import traceback -import urlparse import uuid +from six.moves.urllib.parse import urljoin + errors = None marionette = None pytestrunner = None @@ -132,8 +133,7 @@ class MarionetteTestharnessProtocolPart(TestharnessProtocolPart): # Check if we previously had a test window open, and if we did make sure it's closed if self.runner_handle: self._close_windows() - url = urlparse.urljoin(self.parent.executor.server_url(url_protocol), - "/testharness_runner.html") + url = urljoin(self.parent.executor.server_url(url_protocol), "/testharness_runner.html") self.logger.debug("Loading %s" % url) try: self.dismiss_alert(lambda: self.marionette.navigate(url)) @@ -893,7 +893,7 @@ class InternalRefTestImplementation(RefTestImplementation): def setup(self, screenshot="unexpected"): data = {"screenshot": screenshot} if self.executor.group_metadata is not None: - data["urlCount"] = {urlparse.urljoin(self.executor.server_url(key[0]), key[1]):value + data["urlCount"] = {urljoin(self.executor.server_url(key[0]), key[1]):value for key, value in self.executor.group_metadata.get("url_count", {}).iteritems() if value > 1} self.executor.protocol.marionette.set_context(self.executor.protocol.marionette.CONTEXT_CHROME) diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py index 2b8e865fa9b..8f8e120e66d 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/executors/executorservo.py @@ -7,7 +7,7 @@ import tempfile import threading import traceback import uuid -from six import iteritems +from six import ensure_str, iteritems from mozprocess import ProcessHandler @@ -260,10 +260,10 @@ class ServoRefTestExecutor(ProcessTestExecutor): if rv != 0 or not os.path.exists(output_path): return False, ("CRASH", None) - with open(output_path) as f: + with open(output_path, "rb") as f: # Might need to strip variable headers or something here data = f.read() - return True, base64.b64encode(data) + return True, ensure_str(base64.b64encode(data)) def do_test(self, test): result = self.implementation.run_test(test) diff --git a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py index d650e98dfbf..bff61f3e776 100644 --- a/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py +++ b/tests/wpt/web-platform-tests/tools/wptrunner/wptrunner/wpttest.py @@ -93,7 +93,7 @@ class RunInfo(dict): self._update_mozinfo(metadata_root) self.update(mozinfo.info) - from update.tree import GitTree + from .update.tree import GitTree try: # GitTree.__init__ throws if we are not in a git tree. rev = GitTree(log_error=False).rev diff --git a/tests/wpt/web-platform-tests/uievents/order-of-events/mouse-events/wheel-basic-manual.html b/tests/wpt/web-platform-tests/uievents/order-of-events/mouse-events/wheel-basic-manual.html index 093951dfe49..c5a09f6cb4f 100644 --- a/tests/wpt/web-platform-tests/uievents/order-of-events/mouse-events/wheel-basic-manual.html +++ b/tests/wpt/web-platform-tests/uievents/order-of-events/mouse-events/wheel-basic-manual.html @@ -37,6 +37,7 @@ + + + + + + diff --git a/tests/wpt/web-platform-tests/webxr/ar-module/xrDevice_requestSession_immersive-ar.https.html b/tests/wpt/web-platform-tests/webxr/ar-module/xrDevice_requestSession_immersive-ar.https.html new file mode 100644 index 00000000000..c3fdeb34db0 --- /dev/null +++ b/tests/wpt/web-platform-tests/webxr/ar-module/xrDevice_requestSession_immersive-ar.https.html @@ -0,0 +1,28 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/webxr/ar-module/xrSession_environmentBlendMode.https.html b/tests/wpt/web-platform-tests/webxr/ar-module/xrSession_environmentBlendMode.https.html new file mode 100644 index 00000000000..da2ddc28d8d --- /dev/null +++ b/tests/wpt/web-platform-tests/webxr/ar-module/xrSession_environmentBlendMode.https.html @@ -0,0 +1,24 @@ + + + + + + + + + diff --git a/tests/wpt/web-platform-tests/webxr/resources/webxr_test_constants.js b/tests/wpt/web-platform-tests/webxr/resources/webxr_test_constants.js index 3d9bfa2082b..553a8127fcf 100644 --- a/tests/wpt/web-platform-tests/webxr/resources/webxr_test_constants.js +++ b/tests/wpt/web-platform-tests/webxr/resources/webxr_test_constants.js @@ -136,6 +136,14 @@ const TRACKED_IMMERSIVE_DEVICE = { supportedFeatures: ALL_FEATURES }; +const IMMERSIVE_AR_DEVICE = { + supportsImmersive: true, + supportedModes: [ "inline", "immersive-ar"], + views: VALID_VIEWS, + viewerOrigin: IDENTITY_TRANSFORM, + supportedFeatures: ALL_FEATURES +}; + const VALID_NON_IMMERSIVE_DEVICE = { supportsImmersive: false, supportedModes: ["inline"], @@ -157,3 +165,10 @@ const RIGHT_CONTROLLER = { pointerOrigin: VALID_POINTER_TRANSFORM, profiles: [] }; + +const SCREEN_CONTROLLER = { + handedness: "none", + targetRayMode: "screen", + pointerOrigin: VALID_POINTER_TRANSFORM, + profiles: [] +}; diff --git a/tests/wpt/web-platform-tests/wpt.py b/tests/wpt/web-platform-tests/wpt.py index c65e1ed2c6c..affba7343ea 100644 --- a/tests/wpt/web-platform-tests/wpt.py +++ b/tests/wpt/web-platform-tests/wpt.py @@ -1,3 +1,3 @@ # This file exists to allow `python wpt ` to work on Windows: # https://github.com/web-platform-tests/wpt/pull/6907 -execfile("wpt") +exec(compile(open("wpt", "r").read(), "wpt", 'exec'))