diff options
80 files changed, 2127 insertions, 133 deletions
diff --git a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini index 3a3d15b8406..947e223fb28 100644 --- a/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini +++ b/tests/wpt/metadata/FileAPI/url/url-with-fetch.any.js.ini @@ -14,9 +14,6 @@ [Revoke blob URL after creating Request, will fetch] expected: FAIL - [Revoke blob URL after calling fetch, fetch should succeed] - expected: FAIL - [url-with-fetch.any.html] [Untitled] @@ -37,6 +34,3 @@ [Revoke blob URL after creating Request, will fetch] expected: FAIL - [Revoke blob URL after calling fetch, fetch should succeed] - expected: FAIL - diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index ac63788bfbd..37915a34204 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -111279,6 +111279,66 @@ {} ] ], + "css/css-contain/contain-content-001.html": [ + [ + "css/css-contain/contain-content-001.html", + [ + [ + "/css/css-contain/reference/contain-layout-ifc-022-ref.html", + "==" + ] + ], + {} + ] + ], + "css/css-contain/contain-content-002.html": [ + [ + "css/css-contain/contain-content-002.html", + [ + [ + "/css/css-contain/reference/contain-paint-ifc-011-ref.html", + "==" + ] + ], + {} + ] + ], + "css/css-contain/contain-content-003.html": [ + [ + "css/css-contain/contain-content-003.html", + [ + [ + "/css/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], + "css/css-contain/contain-content-004.html": [ + [ + "css/css-contain/contain-content-004.html", + [ + [ + "/css/css-contain/reference/contain-layout-cell-001-ref.html", + "==" + ] + ], + {} + ] + ], + "css/css-contain/contain-content-011.html": [ + [ + "css/css-contain/contain-content-011.html", + [ + [ + "/css/css-contain/reference/contain-content-011-ref.html", + "==" + ] + ], + {} + ] + ], "css/css-contain/contain-layout-001.html": [ [ "css/css-contain/contain-layout-001.html", @@ -112779,6 +112839,18 @@ {} ] ], + "css/css-contain/contain-strict-011.html": [ + [ + "css/css-contain/contain-strict-011.html", + [ + [ + "/css/css-contain/reference/contain-strict-011-ref.html", + "==" + ] + ], + {} + ] + ], "css/css-contain/contain-style-baseline-001.html": [ [ "css/css-contain/contain-style-baseline-001.html", @@ -141857,6 +141929,18 @@ {} ] ], + "css/css-text/overflow-wrap/overflow-wrap-break-word-008.html": [ + [ + "css/css-text/overflow-wrap/overflow-wrap-break-word-008.html", + [ + [ + "/css/css-text/overflow-wrap/reference/overflow-wrap-break-word-001-ref.html", + "==" + ] + ], + {} + ] + ], "css/css-text/overflow-wrap/overflow-wrap-break-word-fit-content-001.html": [ [ "css/css-text/overflow-wrap/overflow-wrap-break-word-fit-content-001.html", @@ -144221,6 +144305,18 @@ {} ] ], + "css/css-text/white-space/break-spaces-009.html": [ + [ + "css/css-text/white-space/break-spaces-009.html", + [ + [ + "/css/css-text/white-space/reference/white-space-break-spaces-005-ref.html", + "==" + ] + ], + {} + ] + ], "css/css-text/white-space/control-chars-000.html": [ [ "css/css-text/white-space/control-chars-000.html", @@ -257506,6 +257602,11 @@ {} ] ], + "css/css-contain/reference/contain-content-011-ref.html": [ + [ + {} + ] + ], "css/css-contain/reference/contain-layout-baseline-004-ref.html": [ [ {} @@ -257721,6 +257822,11 @@ {} ] ], + "css/css-contain/reference/contain-strict-011-ref.html": [ + [ + {} + ] + ], "css/css-contain/reference/contain-style-breaks-001-ref.html": [ [ {} @@ -291476,11 +291582,6 @@ {} ] ], - "feature-policy/reporting/legacy-image-formats-reporting.html.headers": [ - [ - {} - ] - ], "feature-policy/reporting/microphone-report-only.https.html.headers": [ [ {} @@ -380080,6 +380181,12 @@ } ] ], + "feature-policy/feature-policy-for-sandbox/sandbox-policies-in-allow-attribute.html": [ + [ + "feature-policy/feature-policy-for-sandbox/sandbox-policies-in-allow-attribute.html", + {} + ] + ], "feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html": [ [ "feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html", @@ -380335,12 +380442,6 @@ {} ] ], - "feature-policy/reporting/legacy-image-formats-reporting.html": [ - [ - "feature-policy/reporting/legacy-image-formats-reporting.html", - {} - ] - ], "feature-policy/reporting/microphone-report-only.https.html": [ [ "feature-policy/reporting/microphone-report-only.https.html", @@ -472863,6 +472964,162 @@ {} ] ], + "css/css-text-decor/text-decoration-001.html": [ + [ + "css/css-text-decor/text-decoration-001.html", + {} + ] + ], + "css/css-text-decor/text-decoration-002.html": [ + [ + "css/css-text-decor/text-decoration-002.html", + {} + ] + ], + "css/css-text-decor/text-decoration-003.html": [ + [ + "css/css-text-decor/text-decoration-003.html", + {} + ] + ], + "css/css-text-decor/text-decoration-004.html": [ + [ + "css/css-text-decor/text-decoration-004.html", + {} + ] + ], + "css/css-text-decor/text-decoration-040.html": [ + [ + "css/css-text-decor/text-decoration-040.html", + {} + ] + ], + "css/css-text-decor/text-decoration-040a.html": [ + [ + "css/css-text-decor/text-decoration-040a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-041.html": [ + [ + "css/css-text-decor/text-decoration-041.html", + {} + ] + ], + "css/css-text-decor/text-decoration-044.html": [ + [ + "css/css-text-decor/text-decoration-044.html", + {} + ] + ], + "css/css-text-decor/text-decoration-045.html": [ + [ + "css/css-text-decor/text-decoration-045.html", + {} + ] + ], + "css/css-text-decor/text-decoration-046a.html": [ + [ + "css/css-text-decor/text-decoration-046a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-048.html": [ + [ + "css/css-text-decor/text-decoration-048.html", + {} + ] + ], + "css/css-text-decor/text-decoration-048a.html": [ + [ + "css/css-text-decor/text-decoration-048a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-049.html": [ + [ + "css/css-text-decor/text-decoration-049.html", + {} + ] + ], + "css/css-text-decor/text-decoration-082.html": [ + [ + "css/css-text-decor/text-decoration-082.html", + {} + ] + ], + "css/css-text-decor/text-decoration-085.html": [ + [ + "css/css-text-decor/text-decoration-085.html", + {} + ] + ], + "css/css-text-decor/text-decoration-090.html": [ + [ + "css/css-text-decor/text-decoration-090.html", + {} + ] + ], + "css/css-text-decor/text-decoration-090a.html": [ + [ + "css/css-text-decor/text-decoration-090a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-091.html": [ + [ + "css/css-text-decor/text-decoration-091.html", + {} + ] + ], + "css/css-text-decor/text-decoration-091a.html": [ + [ + "css/css-text-decor/text-decoration-091a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-092.html": [ + [ + "css/css-text-decor/text-decoration-092.html", + {} + ] + ], + "css/css-text-decor/text-decoration-092a.html": [ + [ + "css/css-text-decor/text-decoration-092a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-095a.html": [ + [ + "css/css-text-decor/text-decoration-095a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-096.html": [ + [ + "css/css-text-decor/text-decoration-096.html", + {} + ] + ], + "css/css-text-decor/text-decoration-096a.html": [ + [ + "css/css-text-decor/text-decoration-096a.html", + {} + ] + ], + "css/css-text-decor/text-decoration-097.html": [ + [ + "css/css-text-decor/text-decoration-097.html", + {} + ] + ], + "css/css-text-decor/text-decoration-097a.html": [ + [ + "css/css-text-decor/text-decoration-097a.html", + {} + ] + ], "css/css-text-decor/text-decoration-visibility-001.xht": [ [ "css/css-text-decor/text-decoration-visibility-001.xht", @@ -507019,7 +507276,7 @@ "testharness" ], "content-security-policy/securitypolicyviolation/idlharness.window.js": [ - "fc5e65d6cfdc59fb8bd3c10e3ed358d5b7f8074d", + "25efd0d4e1f5224cda5a74457e801d84777bbcb0", "testharness" ], "content-security-policy/securitypolicyviolation/img-src-redirect-upgrade-reporting.https.html": [ @@ -575726,6 +575983,26 @@ "449221428c3d76d31ff84a5792c7578c36cbebed", "reftest" ], + "css/css-contain/contain-content-001.html": [ + "649bf54df5b6e005253e1a8d5d8b45521889e9f5", + "reftest" + ], + "css/css-contain/contain-content-002.html": [ + "d18ba3c4dd4b894e1c635c471d4045be912ee482", + "reftest" + ], + "css/css-contain/contain-content-003.html": [ + "bb421c01732261d4fad354c9d8c6aeace7e5f7e0", + "reftest" + ], + "css/css-contain/contain-content-004.html": [ + "37b2daf845ad9aff8277dda42ab3320dd3a151a9", + "reftest" + ], + "css/css-contain/contain-content-011.html": [ + "1646413fee73845a56af73135e7ad9e25598b363", + "reftest" + ], "css/css-contain/contain-layout-001.html": [ "85b959da2b9a151c13be3dc83485646341752915", "reftest" @@ -576226,6 +576503,10 @@ "792710cd87d8ee0813838dd39847f9dd2db2e2a9", "reftest" ], + "css/css-contain/contain-strict-011.html": [ + "a3c506b1baa5a45baf696977aec0e27344e47306", + "reftest" + ], "css/css-contain/contain-style-baseline-001.html": [ "f05d20982833077d53ecad3340065aee7e0ca8cd", "reftest" @@ -576318,6 +576599,10 @@ "1fdecb1c33149af52c48c105bce8ad91904bad44", "support" ], + "css/css-contain/reference/contain-content-011-ref.html": [ + "21043b083c893a474aee7e0a926ce5be3d73ec12", + "support" + ], "css/css-contain/reference/contain-layout-baseline-004-ref.html": [ "d0c7788fc18533343ee3830d96161f04ccb5d406", "support" @@ -576490,6 +576775,10 @@ "402ff6c95e14c7c6dbe6e91cd779937bf6c4caa8", "support" ], + "css/css-contain/reference/contain-strict-011-ref.html": [ + "3e69ee5ab8da7dadde757b1cdb811d49bd048a0b", + "support" + ], "css/css-contain/reference/contain-style-breaks-001-ref.html": [ "2c0b758e6bf83ab83444422d39535e14af8c1ab1", "support" @@ -597967,7 +598256,7 @@ "testharness" ], "css/css-properties-values-api/var-reference-registered-properties.html": [ - "166754574faa025807847209f1ab157111a4a6d8", + "050b5e2cf694bc293834a444cf9fa82726968bb3", "testharness" ], "css/css-pseudo/META.yml": [ @@ -603630,6 +603919,110 @@ "6bf79ba4527f99af740bdeca945449e8f9ed7a57", "support" ], + "css/css-text-decor/text-decoration-001.html": [ + "9b620132697dfbf68f0d10575afaf7d902e649da", + "visual" + ], + "css/css-text-decor/text-decoration-002.html": [ + "71c815b34e0eb43d38456ac3ec67cf3a7f96308c", + "visual" + ], + "css/css-text-decor/text-decoration-003.html": [ + "ee987654bf1eab14c45393314adcc6425713c154", + "visual" + ], + "css/css-text-decor/text-decoration-004.html": [ + "0419d85f9625f07d439b57ebc72a422ced6a5099", + "visual" + ], + "css/css-text-decor/text-decoration-040.html": [ + "63b63759197870f9a0616b853a4dd58e282876b1", + "visual" + ], + "css/css-text-decor/text-decoration-040a.html": [ + "90963c8db6ca41c9c962ee0f38d6153cc9e7fc2b", + "visual" + ], + "css/css-text-decor/text-decoration-041.html": [ + "32e0598ab4a9268fd4c2f4b48dec7bbc4632ab0b", + "visual" + ], + "css/css-text-decor/text-decoration-044.html": [ + "63732387f27a9bd32ee42fcf3400f4b8a22c642c", + "visual" + ], + "css/css-text-decor/text-decoration-045.html": [ + "e8a6904071419c0b049ed5b5aad83401e236957d", + "visual" + ], + "css/css-text-decor/text-decoration-046a.html": [ + "a3d5e717e3f882ba2ce9a4bf148fd62856c73b76", + "visual" + ], + "css/css-text-decor/text-decoration-048.html": [ + "c9070bedb3b3450e7d2c0b2b0a76dfbdfdb8e4f2", + "visual" + ], + "css/css-text-decor/text-decoration-048a.html": [ + "7d598af677e9f5be323886842560f9c04d79da8a", + "visual" + ], + "css/css-text-decor/text-decoration-049.html": [ + "b8fb70dcd79a50ae2a49bf705688695f66ee2a88", + "visual" + ], + "css/css-text-decor/text-decoration-082.html": [ + "a1d5497ad2ac01d8df295b8203a9769780317f27", + "visual" + ], + "css/css-text-decor/text-decoration-085.html": [ + "30522cf331fecc3eb17a43a53b1bc9aa5d63ae1d", + "visual" + ], + "css/css-text-decor/text-decoration-090.html": [ + "580fb98c87961670cd2c23f3d01be40477cd06db", + "visual" + ], + "css/css-text-decor/text-decoration-090a.html": [ + "d9ac430079b621104da62a11fca6b0bd3d6cff57", + "visual" + ], + "css/css-text-decor/text-decoration-091.html": [ + "2097792f1c317daaad0f05281a3b547d3555cd3d", + "visual" + ], + "css/css-text-decor/text-decoration-091a.html": [ + "ee2464c5263e1cd7eb1389d4b052bc08633a78e8", + "visual" + ], + "css/css-text-decor/text-decoration-092.html": [ + "5ba99f0de3b463eef56f477d5e2cfffd06f16786", + "visual" + ], + "css/css-text-decor/text-decoration-092a.html": [ + "5f034b3e729955dbc4c0be3c1787745423f224ff", + "visual" + ], + "css/css-text-decor/text-decoration-095a.html": [ + "dc4ae513d125b9cb065875ecd2b5155ff2169fe2", + "visual" + ], + "css/css-text-decor/text-decoration-096.html": [ + "b7c0dc4878b365e9009026c4f537a4312bab761c", + "visual" + ], + "css/css-text-decor/text-decoration-096a.html": [ + "a1f13e57cafd437805633587bdcc1190c18fb26a", + "visual" + ], + "css/css-text-decor/text-decoration-097.html": [ + "4d352e4da17d515aa4426ac286ca663bd8a13834", + "visual" + ], + "css/css-text-decor/text-decoration-097a.html": [ + "64b3249dd6be2cf4364c3ebe62ff256a0373a29d", + "visual" + ], "css/css-text-decor/text-decoration-color-recalc.html": [ "b7cde934fcfd3c73ac351f7b9566adadad542294", "reftest" @@ -606374,6 +606767,10 @@ "0491b921e1aed4b030ca5cf0214afad7bdf3aba1", "reftest" ], + "css/css-text/overflow-wrap/overflow-wrap-break-word-008.html": [ + "9a3a95ba382e770eb6506102a64771caaf4f00af", + "reftest" + ], "css/css-text/overflow-wrap/overflow-wrap-break-word-fit-content-001.html": [ "2c83c46aa50f6d51efbb4d05635d86f7c166042d", "reftest" @@ -608302,6 +608699,10 @@ "7bcb9dd33758baf715060aa288d9a091e9cb0c94", "reftest" ], + "css/css-text/white-space/break-spaces-009.html": [ + "9ecaa919ddfd42c920523e123afbeec232bdc920", + "reftest" + ], "css/css-text/white-space/control-chars-000.html": [ "b038fe9a90d3b8b9cb3bde7fd46396c7121688c9", "reftest" @@ -608703,19 +609104,19 @@ "support" ], "css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html": [ - "1f1761d5a3de94e63cf231d892d50704ddee8d6b", + "cf59a70890adb3cca4dffbf8495e1437887ef133", "support" ], "css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html": [ - "a97a089153d952d3b32177144ab20bbff2ef790b", + "78ee28b61fd2a6c49d0bdfeb1c3cb76066284a81", "support" ], "css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html": [ - "2ead6c8c7ae74a9a81f38db7d8226873abae2b59", + "1d9ac7abc4ac498e3f8920c6212ca4a4e55ba304", "support" ], "css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html": [ - "6b2d4b49d53a0e4ed7268d4417ac69d0cc3fbe11", + "34757067b15b6a30e8273a93df7f68a7cfb4a686", "support" ], "css/css-text/white-space/reference/white-space-pre-wrap-trailing-spaces-001-ref.html": [ @@ -608923,19 +609324,19 @@ "reftest" ], "css/css-text/white-space/white-space-intrinsic-size-001.html": [ - "22514ed669f0438738026c0276d89b845f58942e", + "9974041c80ae660ce018d4bd507717525ad90eeb", "reftest" ], "css/css-text/white-space/white-space-intrinsic-size-002.html": [ - "ce222d898798812a525776ead4263e6032e74f87", + "d105756d0baa7e04b154abe2e05507f4454095f4", "reftest" ], "css/css-text/white-space/white-space-intrinsic-size-003.html": [ - "50c1d1aca6d50f31cb0f2426d2269885ba848dd7", + "fca1ec39ed07bfa06e8102281e148d2b8d780adb", "reftest" ], "css/css-text/white-space/white-space-intrinsic-size-004.html": [ - "21c0bd66cb54410a7c7e03d6c638cc5efa349ae2", + "510a5c5d14188e9dc042ee061f6cb91bb169b73c", "reftest" ], "css/css-text/white-space/white-space-pre-wrap-trailing-spaces-001.html": [ @@ -646695,7 +647096,7 @@ "testharness" ], "feature-policy/feature-policy-for-sandbox/resources/helper.js": [ - "0d82811bcee613547cc8d0b23a9b5aa8fe369caf", + "09a8aa7846cd724e203bb12ce9a014662d01ea0d", "support" ], "feature-policy/feature-policy-for-sandbox/resources/opened_window.html": [ @@ -646714,6 +647115,10 @@ "263a17b524b14fcf8576f61c901df7c0b6afdeca", "support" ], + "feature-policy/feature-policy-for-sandbox/sandbox-policies-in-allow-attribute.html": [ + "a29d43e5fccabedf376ec5cd28fe213d7902081e", + "testharness" + ], "feature-policy/feature-policy-frame-policy-allowed-for-all.https.sub.html": [ "aede7e7876b197417d4fb6f156fda3285ac7e9a4", "testharness" @@ -646982,14 +647387,6 @@ "c059b96d97fc3701ce4325165b79948f69189135", "support" ], - "feature-policy/reporting/legacy-image-formats-reporting.html": [ - "6cd2e752eb915b984adc0552a8f792143d8e448b", - "testharness" - ], - "feature-policy/reporting/legacy-image-formats-reporting.html.headers": [ - "1003c32a445d7f3dafb233e8b49839d9fa336416", - "support" - ], "feature-policy/reporting/microphone-report-only.https.html": [ "539994cd70a2b5a8d598577a0d493c13346755b8", "testharness" @@ -648575,7 +648972,7 @@ "support" ], "fetch/sec-metadata/embed.tentative.https.sub.html": [ - "6f0c439595047049f8c5e71948bbcce6f8c22bd7", + "b97de9ef2fd4c0c41a5671ad7cd20c5814ab5223", "testharness" ], "fetch/sec-metadata/fetch.tentative.https.sub.html": [ @@ -648603,27 +649000,27 @@ "testharness" ], "fetch/sec-metadata/object.tentative.https.sub.html": [ - "2a0e8de85568c1ae6008af793f4ca9a6fad77a3d", + "474962918b03075b0fa97d199a339b5f504d8c20", "testharness" ], "fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html": [ - "f88cf140d4e32ee21d3d0d6475905be55fe8adad", + "1634a29f3791490aa782435a294442d3a925ebda", "testharness" ], "fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html": [ - "688c697ac931eefb445e75240bc4cb978c088e47", + "7647a5b1c89a99ab4c8227a6690c457915e07a62", "testharness" ], "fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html": [ - "bc79f7810a1be2cd12b40463ec6cac9a9e80d723", + "e83d6fd97e844f84dc5fb6c39a3acc99e5e9f087", "testharness" ], "fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html": [ - "a5323921c26bc9882c0c17e75a2a562fe7d6972f", + "2033eab5979a619f918443d98788ae3caaefecb5", "testharness" ], "fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html": [ - "92749ae0b80c44938e6ca88e7c9bbbcd1cef48ca", + "c5b6830abed5f197f2640fa1ddb18be9f79480fd", "testharness" ], "fetch/sec-metadata/report.tentative.https.sub.html": [ @@ -648675,19 +649072,19 @@ "testharness" ], "fetch/sec-metadata/serviceworker.tentative.https.sub.html": [ - "5b7ee772b6175d7c2af3b1932a6194d69785ce65", + "590a6c33475d26e54ef31e7a766f596d4b6d5215", "testharness" ], "fetch/sec-metadata/sharedworker.tentative.https.sub.html": [ - "cfeadd8d8e206bc7a108b25b177ec0b3666d8e58", + "a1c558ad35dfbdb7d2f35535ba26148f31e3f2c6", "testharness" ], "fetch/sec-metadata/style.tentative.https.sub.html": [ - "4ae12662a29380b5c241988b7b97d34031d7bec7", + "46f64f49bde0ce6c642a517aacaf5af8c3074edc", "testharness" ], "fetch/sec-metadata/track.tentative.https.sub.html": [ - "89933f22c393711dd599cbdc4c3a18251005b7f6", + "817e4845edb215cd1fdf8183e6d306a4fe4172c4", "testharness" ], "fetch/sec-metadata/trailing-dot.tentative.https.sub.html": [ @@ -648699,7 +649096,7 @@ "testharness" ], "fetch/sec-metadata/worker.tentative.https.sub.html": [ - "89be6f0b5a1b2cdb6ab2489a2cf70a77baf44667", + "dc21d0324f442a8aa801dbddb04e0b2fe93464d0", "testharness" ], "fetch/sec-metadata/xslt.tentative.https.sub.html": [ @@ -670031,7 +670428,7 @@ "support" ], "interfaces/CSP.idl": [ - "4b53e3a3a40386d93abded001ac99bc04ea46b3e", + "e427ae8801a7863a59d9507d384e075e34bd4731", "support" ], "interfaces/CSS-Parser-API.idl": [ @@ -684567,7 +684964,7 @@ "reftest" ], "quirks/percentage-height-calculation.html": [ - "987cc245ca220bd92108b6babe17d35733fd0697", + "e56a03b4b41b72edca91ff261e766fc9d2cc5426", "testharness" ], "quirks/reference/green-100px-square-no-red.html": [ @@ -716795,7 +717192,7 @@ "testharness" ], "webrtc/RTCDataChannel-id.html": [ - "98be63d923c016eded8080f89987af3dbd60850a", + "4c16547ca780c5285fbb2a264bfaf7b10b43eab6", "testharness" ], "webrtc/RTCDataChannel-send.html": [ @@ -716991,7 +717388,7 @@ "testharness" ], "webrtc/RTCPeerConnection-transceivers.https.html": [ - "9b3a9a85413e2dcfdbcbbefe2b8b05a0ffd05ca0", + "73668e7be6ed8d98630d857657fcace9072b9aee", "testharness" ], "webrtc/RTCPeerConnectionIceEvent-constructor.html": [ diff --git a/tests/wpt/metadata/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html.ini b/tests/wpt/metadata/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html.ini new file mode 100644 index 00000000000..cce949c8c12 --- /dev/null +++ b/tests/wpt/metadata/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html.ini @@ -0,0 +1,2 @@ +[overflow-wrap-break-word-008.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/white-space/break-spaces-009.html.ini b/tests/wpt/metadata/css/css-text/white-space/break-spaces-009.html.ini new file mode 100644 index 00000000000..61175c0921c --- /dev/null +++ b/tests/wpt/metadata/css/css-text/white-space/break-spaces-009.html.ini @@ -0,0 +1,2 @@ +[break-spaces-009.html] + expected: FAIL diff --git a/tests/wpt/metadata/encoding/single-byte-decoder.html.ini b/tests/wpt/metadata/encoding/single-byte-decoder.html.ini index e85a200d4e9..15f0a4d066d 100644 --- a/tests/wpt/metadata/encoding/single-byte-decoder.html.ini +++ b/tests/wpt/metadata/encoding/single-byte-decoder.html.ini @@ -32,7 +32,7 @@ [single-byte-decoder.html?XMLHttpRequest] - expected: TIMEOUT + expected: CRASH [ISO-8859-2: iso_8859-2:1987 (XMLHttpRequest)] 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 18f786d4963..c29ff22ada2 100644 --- a/tests/wpt/metadata/fetch/content-type/response.window.js.ini +++ b/tests/wpt/metadata/fetch/content-type/response.window.js.ini @@ -312,3 +312,12 @@ [<iframe>: separate response Content-Type: text/plain */*;charset=gbk] expected: FAIL + [<iframe>: combined response Content-Type: text/html;" text/plain] + expected: FAIL + + [<iframe>: combined response Content-Type: text/html */*] + expected: FAIL + + [<iframe>: separate response Content-Type: text/html;x=" text/plain] + expected: FAIL + diff --git a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini index 87c807a49ff..a639f15230c 100644 --- a/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini +++ b/tests/wpt/metadata/fetch/nosniff/parsing-nosniff.window.js.ini @@ -11,3 +11,6 @@ [X-Content-Type-Options%3A%20nosniff%0C] expected: FAIL + [Content-Type-Options%3A%20nosniff] + expected: FAIL + diff --git a/tests/wpt/metadata/html/browsers/browsing-the-web/navigating-across-documents/javascript-url-abort/javascript-url-abort-return-value-string.tentative.html.ini b/tests/wpt/metadata/html/browsers/browsing-the-web/navigating-across-documents/javascript-url-abort/javascript-url-abort-return-value-string.tentative.html.ini new file mode 100644 index 00000000000..9bacb9f5c4e --- /dev/null +++ b/tests/wpt/metadata/html/browsers/browsing-the-web/navigating-across-documents/javascript-url-abort/javascript-url-abort-return-value-string.tentative.html.ini @@ -0,0 +1,4 @@ +[javascript-url-abort-return-value-string.tentative.html] + [Aborting fetch for javascript:string navigation] + expected: FAIL + diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini new file mode 100644 index 00000000000..87b07c3e670 --- /dev/null +++ b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_1.html.ini @@ -0,0 +1,4 @@ +[traverse_the_history_1.html] + [Multiple history traversals from the same task] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini new file mode 100644 index 00000000000..8cc42056d34 --- /dev/null +++ b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini @@ -0,0 +1,10 @@ +[non-active-document.html] + [DOMParser] + expected: FAIL + + [createHTMLDocument] + expected: FAIL + + [<template>] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini b/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini new file mode 100644 index 00000000000..9e522297c94 --- /dev/null +++ b/tests/wpt/metadata/html/semantics/interactive-elements/the-details-element/toggleEvent.html.ini @@ -0,0 +1,7 @@ +[toggleEvent.html] + [Calling open twice on 'details' fires only one toggle event] + expected: FAIL + + [Setting open=true to opened 'details' element should not fire a toggle event at the 'details' element] + expected: FAIL + diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini index a56bad443a2..66bd350083b 100644 --- a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini +++ b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini @@ -1,5 +1,4 @@ [realtimeanalyser-fft-scaling.html] - expected: TIMEOUT [X 2048-point FFT peak position is not equal to 64. Got 0.] expected: FAIL diff --git a/tests/wpt/metadata/workers/semantics/run-a-worker/003.html.ini b/tests/wpt/metadata/workers/semantics/run-a-worker/003.html.ini index d6e39444229..49f489d2a1c 100644 --- a/tests/wpt/metadata/workers/semantics/run-a-worker/003.html.ini +++ b/tests/wpt/metadata/workers/semantics/run-a-worker/003.html.ini @@ -1,5 +1,6 @@ [003.html] type: testharness + expected: ERROR [shared] expected: FAIL diff --git a/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini b/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini new file mode 100644 index 00000000000..dbea4f293ad --- /dev/null +++ b/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini @@ -0,0 +1,2 @@ +[transition_calc_implicit.html] + expected: TIMEOUT diff --git a/tests/wpt/web-platform-tests/content-security-policy/securitypolicyviolation/idlharness.window.js b/tests/wpt/web-platform-tests/content-security-policy/securitypolicyviolation/idlharness.window.js index fc5e65d6cfd..25efd0d4e1f 100644 --- a/tests/wpt/web-platform-tests/content-security-policy/securitypolicyviolation/idlharness.window.js +++ b/tests/wpt/web-platform-tests/content-security-policy/securitypolicyviolation/idlharness.window.js @@ -7,7 +7,7 @@ idl_test( ['CSP'], - ['dom'], + ['dom', 'reporting'], idl_array => { idl_array.add_objects({ SecurityPolicyViolationEvent: [ diff --git a/tests/wpt/web-platform-tests/css/css-contain/contain-content-001.html b/tests/wpt/web-platform-tests/css/css-contain/contain-content-001.html new file mode 100644 index 00000000000..649bf54df5b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/contain-content-001.html @@ -0,0 +1,43 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Containment Test: a block with 'contain: content' alongside a float</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + <link rel="help" href="https://www.w3.org/TR/css-contain-1/#contain-property"> + <link rel="match" href="reference/contain-layout-ifc-022-ref.html"> + + <meta content="" name="flags"> + + <style> + div + { + color: transparent; + font-size: 16px; + padding: 8px; + } + + div#floated-left + { + background-color: blue; + float: left; + margin: 8px; + width: 6em; + } + + div#with-contain-content + { + background-color: orange; + width: 12em; + + contain: content; + } + </style> + + + <p>Test passes if the orange rectangle and blue rectangle do not overlap. + + <div id="floated-left">Some text in a blue rectangle.</div> + + <div id="with-contain-content">Some text in an orange rectangle. Some text in an orange rectangle. Some text in an orange rectangle.</div> diff --git a/tests/wpt/web-platform-tests/css/css-contain/contain-content-002.html b/tests/wpt/web-platform-tests/css/css-contain/contain-content-002.html new file mode 100644 index 00000000000..d18ba3c4dd4 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/contain-content-002.html @@ -0,0 +1,56 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Containment Test: 'contain: content' and margin collapsing</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + <link rel="help" href="https://www.w3.org/TR/css-contain-1/#contain-property"> + <link rel="match" href="reference/contain-paint-ifc-011-ref.html"> + + <meta content="This test checks that a block element with 'contain: content' establishes a new block formatting context which is independent and separate from others. This causes margin collapsing to be ineffective among vertically-adjacent boxes. In this test, the top margin of parent boxes and top margin of their respective first in-flow child do not collapse. Also, in this test, the bottom margin of the last in-flow child of boxes and bottom margin of their respective parent boxes do not collapse." name="assert"> + <meta name="flags" content=""> + + <style> + div + { + contain: content; + margin: 30px 0px; + } + + div#grand-grand-parent-orange + { + background-color: orange; + } + + div#grand-parent-blue + { + background-color: blue; + } + + div#parent-lime + { + background-color: lime; + } + + div#collapse-through-child /* margin collapsing through element */ + { + contain: none; + } + </style> + + <p>Test passes if there are 5 horizontal stripes across the page in this order (from top to bottom): an orange stripe, a blue stripe, a bright green stripe, a blue stripe and then an orange stripe. + + <div id="grand-grand-parent-orange"> + + <div id="grand-parent-blue"> + + <div id="parent-lime"> + + <div id="collapse-through-child"></div> + + </div> + + </div> + + </div> diff --git a/tests/wpt/web-platform-tests/css/css-contain/contain-content-003.html b/tests/wpt/web-platform-tests/css/css-contain/contain-content-003.html new file mode 100644 index 00000000000..bb421c01732 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/contain-content-003.html @@ -0,0 +1,53 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Containment Test: element with 'contain: content' and absolutely positioned descendants</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + <link rel="help" href="https://drafts.csswg.org/css-contain/#contain-property"> + <link rel="match" href="../reference/ref-filled-green-100px-square.xht"> + + <meta name="flags" content=""> + <meta name="assert" content="This test checks that an element with 'contain: content' acts as containing block for its absolutely positioned descendants."> + + <style> + div + { + width: 100px; + } + + div#contain-content + { + background-color: red; + contain: content; + height: 100px; + } + + div.abspos + { + background-color: green; + height: 50px; + position: absolute; + right: 0; + } + + div#first-abspos + { + top: 0px; + } + + div#second-abspos + { + bottom: 0px; + } + </style> + + <body> + + <p>Test passes if there is a filled green square and <strong>no red</strong>. + + <div id="contain-content"> + <div id="first-abspos" class="abspos"></div> + <div id="second-abspos" class="abspos"></div> + </div> diff --git a/tests/wpt/web-platform-tests/css/css-contain/contain-content-004.html b/tests/wpt/web-platform-tests/css/css-contain/contain-content-004.html new file mode 100644 index 00000000000..37b2daf845a --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/contain-content-004.html @@ -0,0 +1,63 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Containment Test: 'contain: content' applies to 'table-cell' elements</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + <link rel="help" href="https://www.w3.org/TR/css-contain-1/#containment-layout"> + <link rel="match" href="reference/contain-layout-cell-001-ref.html"> + + <meta content="In this test, the td#contain should act as the containing block for div#abs-pos ." name="assert"> + <meta name="flags" content=""> + + <style> + table + { + background-color: blue; + border-spacing: 2px; + height: 206px; + table-layout: fixed; + width: 206px; + } + + td + { + background-color: white; + padding: 0px; + vertical-align: top; + } + + td#contain + { + contain: content; + } + + span + { + background-color: red; + color: yellow; + font-family: monospace; + vertical-align: top; + } + + div#abs-pos + { + background-color: green; + color: white; + font-family: monospace; + left: 0px; + position: absolute; + top: 0px; + } + </style> + + <p>Test passes if there is the word PASS and if there is <strong>no red</strong>. + + <table> + + <tr><td> <td> + + <tr><td> <td id="contain"><span>FAIL</span><div id="abs-pos">PASS</div> + + </table> diff --git a/tests/wpt/web-platform-tests/css/css-contain/contain-content-011.html b/tests/wpt/web-platform-tests/css/css-contain/contain-content-011.html new file mode 100644 index 00000000000..1646413fee7 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/contain-content-011.html @@ -0,0 +1,94 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Containment Test: 'contain: content' does not turn on style containment</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + <link rel="help" href="https://drafts.csswg.org/css-contain/#contain-property"> + <link rel="match" href="reference/contain-content-011-ref.html"> + + <meta name="flags" content=""> + <meta name="assert" content="'contain: content' does not turn on style containment. So, in this test, the counter of div.abspos child should not be reset and must not be reset."> + + <style> + body + { + counter-reset: counter-of-abspos-div 17; + } + + /* + This creates a new counter identified as + "counter-of-abspos-div" and initially sets + such counter to 17 (an entirely arbitrary + number) + */ + + div + { + width: 100px; + } + + + div#contain-content + { + background-color: red; + contain: content; + height: 100px; + } + + div.abspos + { + background-color: green; + height: 50px; + position: absolute; + right: 0; + } + + div#contain-content > div.abspos + { + counter-increment: counter-of-abspos-div 4; + } + + /* + This increments the counter identified as + "counter-of-abspos-div" of the step value + of 4 (an entirely arbitrary number) each and + every time there is a div.abspos child + within the subtree of div#contain-content + */ + + div#first-abspos + { + top: 0px; + } + + div#second-abspos + { + bottom: 0px; + } + + div#result::after + { + content: counter(counter-of-abspos-div); + font-size: 3em; + } + + /* + Now, the generated content is set to the + current value of the counter identified + as "counter-of-abspos-div": + 17 + 4 * 2 == 25 + */ + </style> + + <body> + + <p>Test passes if there is a filled green square, no red and the number 25. + + <div id="contain-content"> + <div id="first-abspos" class="abspos"></div> + <div id="second-abspos" class="abspos"></div> + </div> + + <div id="result"></div> diff --git a/tests/wpt/web-platform-tests/css/css-contain/contain-strict-011.html b/tests/wpt/web-platform-tests/css/css-contain/contain-strict-011.html new file mode 100644 index 00000000000..a3c506b1baa --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/contain-strict-011.html @@ -0,0 +1,64 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Containment Test: 'contain: strict' does not turn on style containment</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + <link rel="help" href="https://drafts.csswg.org/css-contain/#contain-property"> + <link rel="match" href="reference/contain-strict-011-ref.html"> + + <meta name="flags" content=""> + <meta name="assert" content="'contain: strict' does not turn on style containment. So, in this test, the counter of spans should not be reset and must not be reset."> + + <style> + body + { + counter-reset: counter-of-span 17; + } + + /* + This creates a new counter identified as "counter-of-span" + and initially sets such counter to 17 (an entirely + arbitrary number) + */ + + div + { + contain: strict; + } + + div > span + { + background-color: yellow; + color: red; + counter-increment: counter-of-span 3; + } + + /* + This increments the counter identified as "counter-of-span" + of the step value of 3 (an entirely arbitrary number) each + and every time there is a <span> child within the subtree + of div + */ + + p#test::after + { + content: counter(counter-of-span); + font-size: 3em; + } + + /* + Now, the generated content is set to the current + value of the counter identified as "counter-of-span": + 17 + 3 * 3 == 26 + */ + </style> + + <body> + + <div><span>FAIL1</span> <span>FAIL2</span> <span>FAIL3</span></div> + + <p id="pass-fail-conditions-sentence">Test passes if there is the number 26. + + <p id="test"> diff --git a/tests/wpt/web-platform-tests/css/css-contain/reference/contain-content-011-ref.html b/tests/wpt/web-platform-tests/css/css-contain/reference/contain-content-011-ref.html new file mode 100644 index 00000000000..21043b083c8 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/reference/contain-content-011-ref.html @@ -0,0 +1,27 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Reference Test</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + + <style> + div#green-square + { + background-color: green; + height: 100px; + width: 100px; + } + + div#result + { + font-size: 3em; + } + </style> + + <p>Test passes if there is a filled green square, no red and the number 25. + + <div id="green-square"></div> + + <div id="result">25</div> diff --git a/tests/wpt/web-platform-tests/css/css-contain/reference/contain-strict-011-ref.html b/tests/wpt/web-platform-tests/css/css-contain/reference/contain-strict-011-ref.html new file mode 100644 index 00000000000..3e69ee5ab8d --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-contain/reference/contain-strict-011-ref.html @@ -0,0 +1,23 @@ +<!DOCTYPE html> + + <meta charset="UTF-8"> + + <title>CSS Reference Test</title> + + <link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/"> + + <style> + p + { + margin-top: 1.5em; + } + + div + { + font-size: 3em; + } + </style> + + <p>Test passes if there is the number 26. + + <div>26</div> diff --git a/tests/wpt/web-platform-tests/css/css-properties-values-api/var-reference-registered-properties.html b/tests/wpt/web-platform-tests/css/css-properties-values-api/var-reference-registered-properties.html index 166754574fa..050b5e2cf69 100644 --- a/tests/wpt/web-platform-tests/css/css-properties-values-api/var-reference-registered-properties.html +++ b/tests/wpt/web-platform-tests/css/css-properties-values-api/var-reference-registered-properties.html @@ -136,6 +136,15 @@ test(function(){ element.style = ''; }, 'Lists with relative units are absolutized when substituting'); +test(function(){ + let length = generate_property('none | <length>'); + let universal = generate_property('*'); + element.style = `font-size: 10px; ${length}: 10em; ${universal}: var(${length})`; + let computedStyle = getComputedStyle(element); + assert_equals(computedStyle.getPropertyValue(universal), ' 100px'); + element.style = ''; +}, 'Values are absolutized when substituting into properties with universal syntax'); + function test_valid_fallback(syntax, value, fallback) { test(function(){ let name = generate_property(syntax); diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-001.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-001.html new file mode 100644 index 00000000000..9b620132697 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-001.html @@ -0,0 +1,33 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline</title> +<meta name="assert" content="text-decoration:underline; there is a line at or under the alphabetic baseline"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline; +} +</style> +</head> +<body> +<p class="instructions">Test passes if there is a line at or under the alphabetic baseline.</p> +<div id="htmlsrc"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-002.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-002.html new file mode 100644 index 00000000000..71c815b34e0 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-002.html @@ -0,0 +1,32 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline</title> +<meta name="assert" content="text-decoration:overline; there is an overline"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +</style> +<!-- the test --> +<style> +div span { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is an overline.</p> +<div id="htmlsrc"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-003.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-003.html new file mode 100644 index 00000000000..ee987654bf1 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-003.html @@ -0,0 +1,32 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through</title> +<meta name="assert" content="text-decoration:line-through; there is a solid line through the centre of the characters"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a solid line through the centre of the characters.</p> +<div id="htmlsrc"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-004.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-004.html new file mode 100644 index 00000000000..0419d85f962 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-004.html @@ -0,0 +1,32 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline overline</title> +<meta name="assert" content="text-decoration:underline overline; there is an overline and an underline"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is an overline and an underline.</p> +<div id="htmlsrc"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-040.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-040.html new file mode 100644 index 00000000000..63b63759197 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-040.html @@ -0,0 +1,40 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline tbrl hor scripts</title> +<meta name="assert" content="text-decoration:underline; there is a line to the LEFT of the characters for horizontal scripts set vertically using writing-mode: vertical-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +:lang(mn) { font-family: "Mongolian Baiti", "Noto sans Mongolian", serif; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the LEFT of the characters for all lines.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p--> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-040a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-040a.html new file mode 100644 index 00000000000..90963c8db6c --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-040a.html @@ -0,0 +1,37 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline tbrl mixed</title> +<meta name="assert" content="text-decoration:underline; there is an unbroken line to the LEFT of the characters for each lines"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 3.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +:lang(mn) { font-family: "Mongolian Baiti", "Noto sans Mongolian", serif; } +</style> +<!-- the test --> +<style> +div p { +text-decoration:underline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is an unbroken line to the LEFT of the characters for all lines.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> + +<div> +<p lang="zh">引发<span lang="en">quick brown fox</span>网络<span lang="ar">جهانی سازیم</span>的全<span lang="my">အပြည်ပြည်</span>部潜<span lang="th">ปิ้งอยู่ในถ้ำ</span>能引<span lang="bo">འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་</span>發網<span lang="hi">विश्वव्यापी बना रहें हैं絡</span>的全<span lang="ja">部潛能</span></p> +</div> +</div> +</body> +</html> + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-041.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-041.html new file mode 100644 index 00000000000..32e0598ab4a --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-041.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline tbrl (zh)</title> +<meta name="assert" content="text-decoration:underline; there is a line to the LEFT of the characters"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the LEFT of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> + +<div> +<p lang="zh"><span>引发网络的全部潜能引發網絡的全部潛能</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-044.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-044.html new file mode 100644 index 00000000000..63732387f27 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-044.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline tbrl hor scripts</title> +<meta name="assert" content="text-decoration-line:overline; there is a line to the RIGHT of the characters for horizontal scripts set vertically using writing-mode: vertical-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +:lang(mn) { font-family: "Mongolian Baiti", "Noto sans Mongolian", serif; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the RIGHT of the characters for all lines.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-045.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-045.html new file mode 100644 index 00000000000..e8a69040714 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-045.html @@ -0,0 +1,33 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline tbrl (zh)</title> +<meta name="assert" content="text-decoration-line:overline; there is a line to the RIGHT of the characters"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the RIGHT of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> +<div> +<p lang="zh"><span>引发网络的全部潜能引發網絡的全部潛能</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-046a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-046a.html new file mode 100644 index 00000000000..a3d5e717e3f --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-046a.html @@ -0,0 +1,37 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline tbrl mixed</title> +<meta name="assert" content="text-decoration-line:overline; there is an unbroken line to the RIGHT of the characters for all lines"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 3.5; + } +:lang(mn) { font-family: "Mongolian Baiti", "Noto sans Mongolian", serif; } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div p { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is an unbroken line to the RIGHT of the characters for each line.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> + +<div> +<p lang="zh">引发<span lang="en">quick brown fox</span>网络<span lang="ar">جهانی سازیم</span>的全<span lang="my">အပြည်ပြည်</span>部潜<span lang="th">ปิ้งอยู่ในถ้ำ</span>能引<span lang="bo">འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་</span>發網<span lang="hi">विश्वव्यापी बना रहें हैं絡</span>的全<span lang="ja">部潛能</span></p> +</div> +</div> +</body> +</html> + diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-048.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-048.html new file mode 100644 index 00000000000..c9070bedb3b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-048.html @@ -0,0 +1,35 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through vertical-rl</title> +<meta name="assert" content="text-decoration:line-through; there is a solid vertical line through the centre of the characters"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a solid vertical line through the centre of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> + +<div> +<p lang="zh"><span>引发网络的全部潜能引發網絡的全部潛能</span></p> +<p lang="ja"><span>可能性を最大限に導き出すために</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-048a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-048a.html new file mode 100644 index 00000000000..7d598af677e --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-048a.html @@ -0,0 +1,40 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through vertical-rl hor scripts</title> +<meta name="assert" content="text-decoration:line-through; there is a solid vertical line through the centre of the characters"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a solid vertical line through the centre of the characters.<br/><span class="hint">Skip the test if the text the text fails for the Chinese line, or is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> + +<div> +<p lang="zh"><span>引发网络的全部潜能引發網絡的全部潛能</span></p> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-049.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-049.html new file mode 100644 index 00000000000..b8fb70dcd79 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-049.html @@ -0,0 +1,41 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration vertical-rl over+under</title> +<meta name="assert" content="text-decoration:underline overline; there is a vertical line on both sides of the characters"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +:lang(mn) { font-family: "Mongolian Baiti", "Noto sans Mongolian", serif; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a vertical line on both sides of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-rl"> +<div> +<p lang="zh"><span>引发网络的全部潜能引發網絡的全部潛能</span></p> +<p lang="ja"><span>可能性を最大限に導き出すために</span></p> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-082.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-082.html new file mode 100644 index 00000000000..a1d5497ad2a --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-082.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline overline tblr</title> +<meta name="assert" content="text-decoration:underline overline; there is a line on both sides of the characters"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +:lang(mn) { font-family: "Mongolian Baiti", "Noto sans Mongolian", serif; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line on both sides of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-lr"> +<div> +<p lang="mn"><span>ᠣᠯᠠᠨ ᠦᠨᠳᠦᠰᠦᠲᠡᠨ ᠦ ᠪᠣᠯᠭᠠᠬᠤ ᠦᠢᠯᠡ ᠠᠵᠢᠯᠯᠠᠭᠠ</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-085.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-085.html new file mode 100644 index 00000000000..30522cf331f --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-085.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through tblr</title> +<meta name="assert" content="text-decoration:line-through; there is a solid vertical line through the centre of the characters."> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +:lang(mn) { font-family: "Mongolian Baiti", "Noto sans Mongolian", serif; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a solid vertical line through the centre of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:vertical-lr"> +<div> +<p lang="mn"><span>ᠣᠯᠠᠨ ᠦᠨᠳᠦᠰᠦᠲᠡᠨ ᠦ ᠪᠣᠯᠭᠠᠬᠤ ᠦᠢᠯᠡ ᠠᠵᠢᠯᠯᠠᠭᠠ</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-090.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-090.html new file mode 100644 index 00000000000..580fb98c879 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-090.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline sideways-rl</title> +<meta name="assert" content="text-decoration:underline; there is a line to the LEFT of the characters for horizontal scripts set vertically using writing-mode: sideways-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the LEFT of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-rl"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-090a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-090a.html new file mode 100644 index 00000000000..d9ac430079b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-090a.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline sideways-rl non-Latin</title> +<meta name="assert" content="text-decoration:underline; there is a line to the LEFT of the characters for horizontal scripts set vertically using writing-mode: sideways-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the LEFT of the characters for all lines.<br/><span class="hint">Skip the test if it fails for the English text, or if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-rl"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p--> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-091.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-091.html new file mode 100644 index 00000000000..2097792f1c3 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-091.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline sideways-rl</title> +<meta name="assert" content="text-decoration:overline; there is a line to the RIGHT of the characters for horizontal scripts set vertically using writing-mode: sideways-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the RIGHT of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-rl"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-091a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-091a.html new file mode 100644 index 00000000000..ee2464c5263 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-091a.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline sideways-rl non-Latin</title> +<meta name="assert" content="text-decoration:overline; there is a line to the RIGHT of the characters for horizontal scripts set vertically using writing-mode: sideways-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the RIGHT of the characters for all lines.<br/><span class="hint">Skip the test if it fails for the English sentence, or if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-rl"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p--> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-092.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-092.html new file mode 100644 index 00000000000..5ba99f0de3b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-092.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through sideways-rl</title> +<meta name="assert" content="text-decoration:line-through; there is a line through the CENTRE of the characters for horizontal scripts set vertically using writing-mode: sideways-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line through the CENTRE of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-rl"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-092a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-092a.html new file mode 100644 index 00000000000..5f034b3e729 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-092a.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through sideways-rl non-Latin</title> +<meta name="assert" content="text-decoration:line-through; there is a line through the CENTRE of the characters for horizontal scripts set vertically using writing-mode: sideways-rl"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line through the CENTRE of the characters for all lines.<br/><span class="hint">Skip the test if it fails for the English sentence, or if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-rl"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p--> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-095a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-095a.html new file mode 100644 index 00000000000..dc4ae513d12 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-095a.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration underline sideways-lr non-Latin</title> +<meta name="assert" content="text-decoration:underline; there is a line to the RIGHT of the characters for horizontal scripts set vertically using writing-mode: sideways-lr"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:underline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the RIGHT of the characters for all lines.<br/><span class="hint">Skip the test if it fails for the English sentence, or if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-lr"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p--> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-096.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-096.html new file mode 100644 index 00000000000..b7c0dc4878b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-096.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline sideways-lr</title> +<meta name="assert" content="text-decoration:overline; there is a line to the LEFT of the characters for horizontal scripts set vertically using writing-mode: sideways-lr"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the LEFT of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-lr"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-096a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-096a.html new file mode 100644 index 00000000000..a1f13e57caf --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-096a.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration overline sideways-lr non-Latin</title> +<meta name="assert" content="text-decoration:overline; there is a line to the LEFT of the characters for horizontal scripts set vertically using writing-mode: sideways-lr"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:overline; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line to the LEFT of the characters for all lines.<br/><span class="hint">Skip the test if it fails for the English sentence, or if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-lr"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p--> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-097.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-097.html new file mode 100644 index 00000000000..4d352e4da17 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-097.html @@ -0,0 +1,34 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through sideways-lr</title> +<meta name="assert" content="text-decoration:line-through; there is a line through the CENTRE of the characters for horizontal scripts set vertically using writing-mode: sideways-lr"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line through the CENTRE of the characters.<br/><span class="hint">Skip the test if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-lr"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-097a.html b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-097a.html new file mode 100644 index 00000000000..64b3249dd6b --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text-decor/text-decoration-097a.html @@ -0,0 +1,39 @@ +<!DOCTYPE html> +<html> +<head> +<meta charset="utf-8"> +<title>text-decoration line-through sideways-lr non-Latin</title> +<meta name="assert" content="text-decoration:line-through; there is a line through the CENTRE of the characters for horizontal scripts set vertically using writing-mode: sideways-lr"> +<link rel="author" title="Richard Ishida" href="mailto:ishida@w3.org"> +<link rel="help" href="https://drafts.csswg.org/css-text-decor-3/#line-decoration"> +<!-- cosmetic styling --> +<style> +#htmlsrc { margin: 2em; } +#htmlsrc p { + font-size: 28px; + border-radius: 5px; + line-height: 1.5; + } +.hint { color: brown; font-family: sans-serif; font-size: 90%; } +.hint:before { content: '❗ '; } +</style> +<!-- the test --> +<style> +div span { +text-decoration:line-through; +}</style> +</head> +<body> +<p class="instructions">Test passes if there is a line through the CENTRE of the characters for all lines.<br/><span class="hint">Skip the test if it fails for the English sentence, or if the text is not vertical.</span></p> +<div id="htmlsrc" style="writing-mode:sideways-lr"> + +<div> +<p lang="en"><span>The quick brown fox jumps over the lazy dog.</span></p> +<p lang="ar"><span>وب جهانی را بهدرستی جهانی سازیم!</span></p> +<p lang="my"><span>အပြည်ပြည်ဆိုင်ရာလှုပ်ရှားမှု၊</span></p> +<p lang="th"><span>กูกินกุ้งปิ้งอยู่ในถ้ำ กูกินกุ้งปิ้งอยู่ในถ้ำ</span></p> +<p lang="bo"><span>འཛམ་གླིང་ཡོངས་འབྲེལ་འདི་ ངོ་མ་འབད་རང་ འཛམ་གླིང་ཡོངས་ལུ་ཁྱབ་ཚུགསཔ་བཟོ་བ།</span></p> +<p lang="hi"><span>वर्ल्ड वाईड वेब को सचमुच विश्वव्यापी बना रहें हैं !</span></p--> +</div> </div> +</body> +</html> diff --git a/tests/wpt/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html b/tests/wpt/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html new file mode 100644 index 00000000000..9a3a95ba382 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text/overflow-wrap/overflow-wrap-break-word-008.html @@ -0,0 +1,40 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>CSS Text Test: overflow-wrap:break-word + white-space:break-spaces</title> +<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" /> +<link rel="help" title="3. White Space and Wrapping: the white-space property" href="https://drafts.csswg.org/css-text-3/#white-space-property"> +<link rel="help" title="5.5. Overflow Wrapping: the overflow-wrap/word-wrap property " href="https://drafts.csswg.org/css-text-3/#overflow-wrap-property"> +<link rel="help" href="https://drafts.csswg.org/css-text-3/#valdef-overflow-wrap-break-word"> +<link rel="help" href="https://drafts.csswg.org/css-text-3/#valdef-white-space-break-spaces"> +<meta name="flags" content="ahem"> +<link rel="match" href="reference/overflow-wrap-break-word-001-ref.html"> +<meta name="assert" content="break-word + break-spaces do allow a break +between the last character of a word and the first space of a sequence of preserved spaces +if there are no other wrapping opportunities earlier in the line"> +<style> +div { + position: relative; + font-family: Ahem; + font-size: 25px; + line-height: 1em; +} +.red { + position: absolute; + color: green; + width: 100px; + height: 100px; + white-space: pre; +} +.test { + background: green; + color: red; + width: 4ch; + z-index: -1; + + white-space: break-spaces; + overflow-wrap: break-word; +</style> + +<p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p> +<div class="red">XXXX<br> <br>XXXX<br></div> +<div class="test">XXXX XXXX </div> diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-009.html b/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-009.html new file mode 100644 index 00000000000..9ecaa919ddf --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/break-spaces-009.html @@ -0,0 +1,38 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>CSS Text Test: word-break:break-word + white-space:break-spaces</title> +<link rel="author" title="Javier Fernandez" href="mailto:jfernandez@igalia.com" /> +<link rel="help" title="3. White Space and Wrapping: the white-space property" href="https://drafts.csswg.org/css-text-3/#white-space-property"> +<link rel="help" title="5.2. Breaking Rules for Letters: the word-break property" href="https://drafts.csswg.org/css-text-3/#word-break-property"> +<link rel="help" href="https://drafts.csswg.org/css-text-3/#valdef-white-space-break-spaces"> +<link rel="help" href="https://drafts.csswg.org/css-text-3/#valdef-word-break-break-word"> +<meta name="flags" content="ahem"> +<link rel="match" href="reference/white-space-break-spaces-005-ref.html"> +<meta name="assert" content="break-word + break-spaces do allow a break +between the last character of a word and the first space of a sequence of preserved spaces +if there are no other wrapping opportunities earlier in the line"> +<style> +div { + position: relative; + font: 25px/1 Ahem; +} +.red { + position: absolute; + color: green; + width: 100px; + height: 100px; + white-space: pre; +} +.test { + background: green; + color: red; + width: 4ch; + z-index: -1; + + white-space: break-spaces; + word-break: break-word; +</style> + +<p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p> +<div class="red">XXXX<br> <br>XXXX<br></div> +<div class="test">XXXX XXXX </div> diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html index 1f1761d5a3d..cf59a70890a 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-001-ref.html @@ -4,7 +4,7 @@ <link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/"> <style> div { - font-family: monospace; + font-family: Ahem; color: transparent; font-size: 50px; background: green; diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html index a97a089153d..78ee28b61fd 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-002-ref.html @@ -6,7 +6,7 @@ div { color: transparent; background: blue; - font-family: monospace; + font-family: Ahem; font-size: 50px; width: 3ch; } diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html index 2ead6c8c7ae..1d9ac7abc4a 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-003-ref.html @@ -4,6 +4,7 @@ <link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/"> <style> div { + font-family: Ahem; color: transparent; font-size: 50px; background: green; diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html index 6b2d4b49d53..34757067b15 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/reference/white-space-intrinsic-size-004-ref.html @@ -9,7 +9,7 @@ aside { } div { color: transparent; - font-family: monospace; + font-family: Ahem; font-size: 50px; width: 5ch; } diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001.html index 22514ed669f..9974041c80a 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-001.html @@ -15,7 +15,7 @@ aside { } aside:last-of-type { overflow-wrap: break-word; } div { - font-family: monospace; + font-family: Ahem; color: transparent; font-size: 50px; width: 0ch; diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002.html index ce222d89879..d105756d0ba 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-002.html @@ -19,7 +19,7 @@ aside:last-of-type { } div { color: transparent; - font-family: monospace; + font-family: Ahem; font-size: 50px; width: 3ch; /* both floats should take the full 3ch, diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003.html index 50c1d1aca6d..fca1ec39ed0 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-003.html @@ -15,6 +15,7 @@ aside { } div { color: transparent; + font-family: Ahem; font-size: 50px; width: 0ch; } diff --git a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004.html b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004.html index 21c0bd66cb5..510a5c5d141 100644 --- a/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004.html +++ b/tests/wpt/web-platform-tests/css/css-text/white-space/white-space-intrinsic-size-004.html @@ -17,7 +17,7 @@ aside { aside:last-of-type { overflow-wrap: break-word; } div { color: transparent; - font-family: monospace; + font-family: Ahem; font-size: 50px; width: 3ch; /* enough room for both floats if their max-content size does not include the preserved spaces, but not enough if they do, causing a line break in that case. */ diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-for-sandbox/resources/helper.js b/tests/wpt/web-platform-tests/feature-policy/feature-policy-for-sandbox/resources/helper.js index 0d82811bcee..09a8aa7846c 100644 --- a/tests/wpt/web-platform-tests/feature-policy/feature-policy-for-sandbox/resources/helper.js +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-for-sandbox/resources/helper.js @@ -3,13 +3,18 @@ const all_features = document.featurePolicy.allowedFeatures(); // 'popups' is nonsensical in this test and it is not possible to test 'scripts' // within this test model. -const ignore_features = ["popups", "scripts"]; +const ignore_features_for_auxilary_context = ["popups", "scripts"]; + +// Feature-policies that represent specific sandbox flags. +const sandbox_features = [ + "forms", "modals", "orientation-lock", "pointer-lock", "popups", + "presentation", "scripts", "top-navigation"]; // TODO(ekaramad): Figure out different inheritance requirements for different // policies. // Features which will be tested for propagation to auxiliary contexts. const features_that_propagate = all_features.filter( - (feature) => !ignore_features.includes(feature)); + (feature) => !ignore_features_for_auxilary_context.includes(feature)); var last_feature_message = null; var on_new_feature_callback = null; @@ -29,10 +34,28 @@ function add_iframe(options) { }); } +// Resolves after |c| animation frames. +function wait_for_raf_count(c) { + let count = c; + let callback = null; + function on_raf() { + if (--count === 0) { + callback(); + return; + } + window.requestAnimationFrame(on_raf); + } + return new Promise( r => { + callback = r; + window.requestAnimationFrame(on_raf); + }); +} + // Returns a promise which is resolved with the next/already received message // with feature update for |feature|. The resolved value is the state of the -// feature |feature|. -function feature_update(feature) { +// feature |feature|. If |optional_timeout| is provided, after the given delay +// (in terms of rafs) the promise is resolved with false. +function feature_update(feature, optional_timeout_rafs) { function reset_for_next_update() { return new Promise((r) => { const state = last_feature_message.state; @@ -43,6 +66,13 @@ function feature_update(feature) { if (last_feature_message && last_feature_message.feature === feature) return reset_for_next_update(); + if (optional_timeout_rafs) { + wait_for_raf_count(optional_timeout_rafs).then (() => { + last_feature_message = {state: false}; + on_new_feature_callback(); + }); + } + return new Promise((r) => on_new_feature_callback = r) .then(() => reset_for_next_update()); } diff --git a/tests/wpt/web-platform-tests/feature-policy/feature-policy-for-sandbox/sandbox-policies-in-allow-attribute.html b/tests/wpt/web-platform-tests/feature-policy/feature-policy-for-sandbox/sandbox-policies-in-allow-attribute.html new file mode 100644 index 00000000000..a29d43e5fcc --- /dev/null +++ b/tests/wpt/web-platform-tests/feature-policy/feature-policy-for-sandbox/sandbox-policies-in-allow-attribute.html @@ -0,0 +1,46 @@ +<!DOCTYPE html> +<head> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +</head> +<body> +<div id="iframe-embedder"></div> +<script src="./resources/helper.js"></script> +<script> +'use strict'; + +const iframe_src = "/feature-policy/feature-policy-for-sandbox/resources/window_opener.html"; + +promise_test( async () => { + for (const feature of sandbox_features) { + // For the test to work correctly we need "scripts"; + const sandbox_flags = feature === "scripts" ? "" : "allow-scripts"; + const iframe = await add_iframe( + {src: iframe_src, allow: `${feature} *`, sandbox: sandbox_flags}); + iframe.contentWindow.postMessage({type: "feature", feature: feature}, "*"); + const iframe_state = await feature_update(feature); + assert_true(iframe_state, + `'${feature}' should not be disabled in <iframe>.'`); + iframe.parentElement.removeChild(iframe); + } +}, "Verify that when a sandbox related feature is enabled in 'allow' then " + + " the feature will be enabled regardless of sandbox attribute's value."); + +promise_test( async() => { + for (const feature of sandbox_features) { + const sandbox_flags = `allow-${feature} allow-scripts`; + const iframe = await add_iframe( + {src: iframe_src, allow: `${feature} 'none'`, sandbox: sandbox_flags}); + iframe.contentWindow.postMessage({type: "feature", feature: feature}, "*"); + // 'scripts' will block running code in the subframe and no update can be + // sent. A timeout determines the feature is disabled. + const timeout = (feature === "scripts") ? 10 : false; + const iframe_state = await feature_update(feature, timeout); + assert_false(iframe_state, + `'${feature}' should be disabled in <iframe>.'`); + iframe.parentElement.removeChild(iframe); + } +}, "Verify that when a sandbox related feature is disabled in 'allow' then " + + " the feature will be disabled regardless of sandbox attribute's value."); +</script> +</body>
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/legacy-image-formats-reporting.html b/tests/wpt/web-platform-tests/feature-policy/reporting/legacy-image-formats-reporting.html deleted file mode 100644 index 6cd2e752eb9..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/legacy-image-formats-reporting.html +++ /dev/null @@ -1,24 +0,0 @@ -<!DOCTYPE html> -<html> -<head> - <script src='/resources/testharness.js'></script> - <script src='/resources/testharnessreport.js'></script> -</head> -<body> - <img src="image.bmp"> - <script> - var check_report_format = (reports, observer) => { - let report = reports[0]; - assert_equals(report.type, "feature-policy-violation"); - assert_equals(report.url, document.location.href); - assert_equals(report.body.featureId, "legacy-image-formats"); - assert_equals(report.body.disposition, "enforce"); - }; - - async_test(t => { - new ReportingObserver(t.step_func_done(check_report_format), - {types: ['feature-policy-violation'], buffered: true}).observe(); - }, "Unsized-media Report Format"); - </script> -</body> -</html> diff --git a/tests/wpt/web-platform-tests/feature-policy/reporting/legacy-image-formats-reporting.html.headers b/tests/wpt/web-platform-tests/feature-policy/reporting/legacy-image-formats-reporting.html.headers deleted file mode 100644 index 1003c32a445..00000000000 --- a/tests/wpt/web-platform-tests/feature-policy/reporting/legacy-image-formats-reporting.html.headers +++ /dev/null @@ -1 +0,0 @@ -Feature-Policy: legacy-image-formats 'none' diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/embed.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/embed.tentative.https.sub.html index 6f0c4395950..b97de9ef2fd 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/embed.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/embed.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body> <script> + let nonce = token(); + promise_test(t => { return new Promise((resolve, reject) => { - let key = "embed-same-origin"; + let key = "embed-same-origin" + nonce; let e = document.createElement('embed'); e.src = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -27,7 +30,7 @@ promise_test(t => { return new Promise((resolve, reject) => { - let key = "embed-same-site"; + let key = "embed-same-site" + nonce; let e = document.createElement('embed'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -46,7 +49,7 @@ promise_test(t => { return new Promise((resolve, reject) => { - let key = "embed-cross-site"; + let key = "embed-cross-site" + nonce; let e = document.createElement('embed'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/object.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/object.tentative.https.sub.html index 2a0e8de8556..474962918b0 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/object.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/object.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body> <script> + let nonce = token(); + promise_test(t => { return new Promise((resolve, reject) => { - let key = "object-same-origin"; + let key = "object-same-origin" + nonce; let e = document.createElement('object'); e.data = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -27,7 +30,7 @@ promise_test(t => { return new Promise((resolve, reject) => { - let key = "object-same-site"; + let key = "object-same-site" + nonce; let e = document.createElement('object'); e.data = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -46,7 +49,7 @@ promise_test(t => { return new Promise((resolve, reject) => { - let key = "object-cross-site"; + let key = "object-cross-site" + nonce; let e = document.createElement('object'); e.data = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html index f88cf140d4e..1634a29f379 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/cross-site-redirect.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body></body> <script> -promise_test(t => { + let nonce = token(); + + promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-cross-site-same-origin"; + let key = "redirect-cross-site-same-origin" + nonce; let e = document.createElement('img'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -34,7 +37,7 @@ promise_test(t => { promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-cross-site-same-site"; + let key = "redirect-cross-site-same-site" + nonce; let e = document.createElement('img'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -60,7 +63,7 @@ promise_test(t => { promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-cross-site-cross-site"; + let key = "redirect-cross-site-cross-site" + nonce; let e = document.createElement('img'); e.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html index 688c697ac93..7647a5b1c89 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-cross-site.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body></body> <script> -promise_test(t => { + let nonce = token(); + + promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-multiple-cross-site"; + let key = "redirect-multiple-cross-site" + nonce; let e = document.createElement('img'); e.src = "https://{{host}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=" +// same-origin diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html index bc79f7810a1..e83d6fd97e8 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/multiple-redirect-same-site.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body></body> <script> -promise_test(t => { + let nonce = token(); + + promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-multiple-same-site"; + let key = "redirect-multiple-same-site" + nonce; let e = document.createElement('img'); e.src = "https://{{host}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=" +// same-origin diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html index a5323921c26..2033eab5979 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-origin-redirect.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body></body> <script> -promise_test(t => { + let nonce = token(); + + promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-same-origin-same-origin"; + let key = "redirect-same-origin-same-origin" + nonce; let e = document.createElement('img'); e.src = "/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -35,7 +38,7 @@ promise_test(t => { promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-same-origin-same-site"; + let key = "redirect-same-origin-same-site" + nonce; let e = document.createElement('img'); e.src = "/xhr/resources/redirect.py?location=https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -62,7 +65,7 @@ promise_test(t => { promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-same-origin-cross-site"; + let key = "redirect-same-origin-cross-site" + nonce; let e = document.createElement('img'); e.src = "/xhr/resources/redirect.py?location=https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html index 92749ae0b80..c5b6830abed 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/redirect/same-site-redirect.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body></body> <script> -promise_test(t => { + let nonce = token(); + + promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-same-site-same-origin"; + let key = "redirect-same-site-same-origin" + nonce; let e = document.createElement('img'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -35,7 +38,7 @@ promise_test(t => { promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-same-site-same-site"; + let key = "redirect-same-site-same-site" + nonce; let e = document.createElement('img'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; @@ -62,7 +65,7 @@ promise_test(t => { promise_test(t => { return new Promise((resolve, reject) => { - let key = "redirect-same-site-cross-site"; + let key = "redirect-same-site-cross-site" + nonce; let e = document.createElement('img'); e.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/xhr/resources/redirect.py?location=https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html index 5b7ee772b61..590a6c33475 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/serviceworker.tentative.https.sub.html @@ -4,11 +4,15 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body> <script> + let nonce = token(); + let key = "serviceworker-same-origin" + nonce; + if ('serviceWorker' in navigator) { window.addEventListener('load', function() { - navigator.serviceWorker.register('https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=serviceworker-same-origin').then(function(registration) { + navigator.serviceWorker.register('https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=' + key).then(function(registration) { test_same_origin(); // uninstall the serviceworker after the test @@ -34,7 +38,6 @@ function test_same_origin(){ promise_test(t => { return new Promise((resolve, reject) => { - let key = "serviceworker-same-origin"; let expected = {"dest":"serviceworker", "site":"same-origin", "user":"?F", "mode": "same-origin"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html index cfeadd8d8e2..a1c558ad35d 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/sharedworker.tentative.https.sub.html @@ -4,13 +4,16 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <script> + let nonce = token(); + let key = "sharedworker-same-origin" + nonce; // TESTS // if (window.Worker) { // Same-Origin test - var sharedWorker = new SharedWorker('/fetch/sec-metadata/resources/record-header.py?file=sharedworker-same-origin'); + var sharedWorker = new SharedWorker('/fetch/sec-metadata/resources/record-header.py?file=' + key); sharedWorker.port.start(); sharedWorker.onerror = function(){ @@ -25,7 +28,6 @@ function test_same_origin(){ promise_test(t => { return new Promise((resolve, reject) => { - let key = "sharedworker-same-origin"; let expected = {"dest":"sharedworker", "site":"same-origin", "user":"?F", "mode": "same-origin"}; fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/style.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/style.tentative.https.sub.html index 4ae12662a29..46f64f49bde 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/style.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/style.tentative.https.sub.html @@ -4,11 +4,14 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body></body> <script> + let nonce = token(); + promise_test(t => { return new Promise((resolve, reject) => { - let key = "style-same-origin"; + let key = "style-same-origin" + nonce; let e = document.createElement('link'); e.rel = "stylesheet"; @@ -28,7 +31,7 @@ promise_test(t => { return new Promise((resolve, reject) => { - let key = "style-same-site"; + let key = "style-same-site" + nonce; let e = document.createElement('link'); e.rel = "stylesheet"; @@ -48,7 +51,7 @@ promise_test(t => { return new Promise((resolve, reject) => { - let key = "style-cross-site"; + let key = "style-cross-site" + nonce; let e = document.createElement('link'); e.rel = "stylesheet"; @@ -68,7 +71,7 @@ promise_test(t => { return new Promise((resolve, reject) => { - let key = "style-same-origin"; + let key = "style-same-origin-cors" + nonce; let e = document.createElement('link'); e.rel = "stylesheet"; diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/track.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/track.tentative.https.sub.html index 89933f22c39..817e4845edb 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/track.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/track.tentative.https.sub.html @@ -4,9 +4,12 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <body> </body> <script> + let nonce = token(); + function createVideoElement() { let el = document.createElement('video'); el.src = "/media/movie_5.mp4"; @@ -25,9 +28,10 @@ promise_test(t => { return new Promise((resolve, reject) => { + let key = "track-same-origin" + nonce; let video = createVideoElement(); let el = createTrack(); - el.src = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=track-same-origin"; + el.src = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; el.onload = t.step_func(_ => { expected = { "dest": "track", @@ -35,7 +39,7 @@ "user": "?F", "mode": "cors" // Because the `video` element has `crossorigin` }; - fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=track-same-origin") + fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) .then(_ => resolve()); @@ -47,9 +51,10 @@ promise_test(t => { return new Promise((resolve, reject) => { + let key = "track-same-site" + nonce; let video = createVideoElement(); let el = createTrack(); - el.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=track-same-site"; + el.src = "https://{{hosts[][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; el.onload = t.step_func(_ => { expected = { "dest": "track", @@ -57,7 +62,7 @@ "user": "?F", "mode": "cors" // Because the `video` element has `crossorigin` }; - fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=track-same-site") + fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) .then(resolve) @@ -71,9 +76,10 @@ promise_test(t => { return new Promise((resolve, reject) => { + let key = "track-cross-site" + nonce; let video = createVideoElement(); let el = createTrack(); - el.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=track-cross-site"; + el.src = "https://{{hosts[alt][www]}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; el.onload = t.step_func(_ => { expected = { "dest": "track", @@ -81,7 +87,7 @@ "user": "?F", "mode": "cors" // Because the `video` element has `crossorigin` }; - fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=track-cross-site") + fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) .then(resolve) @@ -94,13 +100,14 @@ promise_test(t => { return new Promise((resolve, reject) => { + let key = "track-same-origin-cors" + nonce; let video = createVideoElement(); // Unset `crossorigin` to change the CORS mode: video.crossOrigin = undefined; let el = createTrack(); - el.src = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=track-same-origin"; + el.src = "https://{{host}}:{{ports[https][0]}}/fetch/sec-metadata/resources/record-header.py?file=" + key; el.onload = t.step_func(_ => { expected = { "dest":"track", @@ -108,7 +115,7 @@ "user":"?F", "mode": "same-origin" }; - fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=track-same-origin") + fetch("/fetch/sec-metadata/resources/record-header.py?retrieve=true&file=" + key) .then(response => response.text()) .then(text => assert_header_equals(text, expected)) .then(_ => resolve()); diff --git a/tests/wpt/web-platform-tests/fetch/sec-metadata/worker.tentative.https.sub.html b/tests/wpt/web-platform-tests/fetch/sec-metadata/worker.tentative.https.sub.html index 89be6f0b5a1..dc21d0324f4 100644 --- a/tests/wpt/web-platform-tests/fetch/sec-metadata/worker.tentative.https.sub.html +++ b/tests/wpt/web-platform-tests/fetch/sec-metadata/worker.tentative.https.sub.html @@ -4,10 +4,13 @@ <script src=/resources/testharness.js></script> <script src=/resources/testharnessreport.js></script> <script src=/fetch/sec-metadata/resources/helper.js></script> +<script src=/common/utils.js></script> <script> + let nonce = token(); + promise_test(t => { return new Promise((resolve, reject) => { - let key = "worker-same-origin"; + let key = "worker-same-origin" + nonce; let w = new Worker("/fetch/sec-metadata/resources/record-header.py?file=" + key); w.onmessage = e => { let expected = {"dest":"worker", "site":"same-origin", "user":"?F", "mode": "same-origin"}; diff --git a/tests/wpt/web-platform-tests/interfaces/CSP.idl b/tests/wpt/web-platform-tests/interfaces/CSP.idl index 4b53e3a3a40..e427ae8801a 100644 --- a/tests/wpt/web-platform-tests/interfaces/CSP.idl +++ b/tests/wpt/web-platform-tests/interfaces/CSP.idl @@ -3,6 +3,20 @@ // (https://github.com/tidoust/reffy-reports) // Source: Content Security Policy Level 3 (https://w3c.github.io/webappsec-csp/) +interface CSPViolationReportBody : ReportBody { + readonly attribute USVString documentURL; + readonly attribute USVString? referrer; + readonly attribute USVString? blockedURL; + readonly attribute DOMString effectiveDirective; + readonly attribute DOMString originalPolicy; + readonly attribute USVString? sourceFile; + readonly attribute DOMString? sample; + readonly attribute SecurityPolicyViolationEventDisposition disposition; + readonly attribute unsigned short statusCode; + readonly attribute unsigned long? lineNumber; + readonly attribute unsigned long? columnNumber; +}; + enum SecurityPolicyViolationEventDisposition { "enforce", "report" }; diff --git a/tests/wpt/web-platform-tests/quirks/percentage-height-calculation.html b/tests/wpt/web-platform-tests/quirks/percentage-height-calculation.html index 987cc245ca2..e56a03b4b41 100644 --- a/tests/wpt/web-platform-tests/quirks/percentage-height-calculation.html +++ b/tests/wpt/web-platform-tests/quirks/percentage-height-calculation.html @@ -56,6 +56,10 @@ {style:'', body:'<img id=test src="{png}" height=100% border=10>', q:184, s:1}, {style:'', body:'<table id=test height=100%><tr><td></table>', q:184, s:6}, {style:'#foo { height:100px } #test { height:100% }', body:'<div id=foo><div><div id=test></div></div></div>', q:100, s:0}, + {style:'#foo { height:100px } #grid { display:grid } #test { height:100% }', body:'<div id=foo><div id=grid><div id=test></div></div></div>', q:0, s:0}, + {style:'#foo { height:100px } #grid { display:inline-grid } #test { height:100% }', body:'<div id=foo><div id=grid><div id=test></div></div></div>', q:0, s:0}, + {style:'#foo { height:100px } #flex { display:flex } #test { height:100% }', body:'<div id=foo><div id=flex><div id=test></div></div></div>', q:0, s:0}, + {style:'#foo { height:100px } #flex { display:inline-flex } #test { height:100% }', body:'<div id=foo><div id=flex><div id=test></div></div></div>', q:0, s:0}, {style:'#foo { position:absolute } #test { height:100% }', body:'<div id=foo><div><div id=test></div></div></div>', q:0, s:0}, {style:'#foo { position:relative } #test { height:100% }', body:'<div id=foo><div><div id=test></div></div></div>', q:184, s:0}, {style:'#foo { height:100px } #test { height:100%; position:absolute }', body:'<div id=foo><div><div id=test></div></div></div>', q:200, s:200}, diff --git a/tests/wpt/web-platform-tests/webrtc/RTCDataChannel-id.html b/tests/wpt/web-platform-tests/webrtc/RTCDataChannel-id.html index 98be63d923c..4c16547ca78 100644 --- a/tests/wpt/web-platform-tests/webrtc/RTCDataChannel-id.html +++ b/tests/wpt/web-platform-tests/webrtc/RTCDataChannel-id.html @@ -246,6 +246,7 @@ promise_test(async (t) => { 3. Fire an event named error with an OperationError exception at channel. 4. Fire a simple event named close at channel. */ +/* TEST DISABLED - it takes so long, it times out. promise_test(async (t) => { const resolver = new Resolver(); // Takes the DTLS server role @@ -339,4 +340,6 @@ promise_test(async (t) => { await resolver; }, 'Channel ID exhaustion handling (before and after connection establishment)'); +END DISABLED TEST */ + </script> diff --git a/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-transceivers.https.html b/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-transceivers.https.html index 9b3a9a85413..73668e7be6e 100644 --- a/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-transceivers.https.html +++ b/tests/wpt/web-platform-tests/webrtc/RTCPeerConnection-transceivers.https.html @@ -210,10 +210,10 @@ promise_test(async t => { const trackEvent = await exchangeOfferAndListenToOntrack(t, pc1, pc2); const transceiver = trackEvent.transceiver; assert_equals(transceiver.currentDirection, null, - 'SRD(offer): transciever.currentDirection is null'); + 'SRD(offer): transceiver.currentDirection is null'); await pc2.setLocalDescription(await pc2.createAnswer()); assert_equals(transceiver.currentDirection, 'recvonly', - 'SLD(answer): transciever.currentDirection is recvonly'); + 'SLD(answer): transceiver.currentDirection is recvonly'); }, 'setLocalDescription(answer): transceiver.currentDirection is recvonly'); promise_test(async t => { @@ -223,10 +223,10 @@ promise_test(async t => { const pc2 = createPeerConnectionWithCleanup(t); await exchangeOffer(pc1, pc2); assert_equals(transceiver.currentDirection, null, - 'SLD(offer): transciever.currentDirection is null'); + 'SLD(offer): transceiver.currentDirection is null'); await exchangeAnswer(pc1, pc2); assert_equals(transceiver.currentDirection, 'sendonly', - 'SRD(answer): transciever.currentDirection is sendonly'); + 'SRD(answer): transceiver.currentDirection is sendonly'); }, 'setLocalDescription(answer): transceiver.currentDirection is sendonly'); promise_test(async t => { |