Update web-platform-tests to revision add24188a1226f3598ad6b455e71641c9ac6a5fd

This commit is contained in:
WPT Sync Bot 2019-03-29 21:43:03 -04:00
parent 4cf39a696d
commit 6ed2abf735
80 changed files with 2127 additions and 133 deletions

View file

@ -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

View file

@ -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": [

View file

@ -0,0 +1,2 @@
[overflow-wrap-break-word-008.html]
expected: FAIL

View file

@ -0,0 +1,2 @@
[break-spaces-009.html]
expected: FAIL

View file

@ -32,7 +32,7 @@
[single-byte-decoder.html?XMLHttpRequest]
expected: TIMEOUT
expected: CRASH
[ISO-8859-2: iso_8859-2:1987 (XMLHttpRequest)]
expected: FAIL

View file

@ -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

View file

@ -11,3 +11,6 @@
[X-Content-Type-Options%3A%20nosniff%0C]
expected: FAIL
[Content-Type-Options%3A%20nosniff]
expected: FAIL

View file

@ -0,0 +1,4 @@
[javascript-url-abort-return-value-string.tentative.html]
[Aborting fetch for javascript:string navigation]
expected: FAIL

View file

@ -0,0 +1,4 @@
[traverse_the_history_1.html]
[Multiple history traversals from the same task]
expected: FAIL

View file

@ -0,0 +1,10 @@
[non-active-document.html]
[DOMParser]
expected: FAIL
[createHTMLDocument]
expected: FAIL
[<template>]
expected: FAIL

View file

@ -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

View file

@ -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

View file

@ -1,5 +1,6 @@
[003.html]
type: testharness
expected: ERROR
[shared]
expected: FAIL

View file

@ -0,0 +1,2 @@
[transition_calc_implicit.html]
expected: TIMEOUT

View file

@ -7,7 +7,7 @@
idl_test(
['CSP'],
['dom'],
['dom', 'reporting'],
idl_array => {
idl_array.add_objects({
SecurityPolicyViolationEvent: [

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>&nbsp;<td>&nbsp;
<tr><td>&nbsp;<td id="contain"><span>FAIL</span><div id="abs-pos">PASS</div>
</table>

View file

@ -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>

View file

@ -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">

View file

@ -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>

View file

@ -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>

View file

@ -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);

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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>

View file

@ -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;

View file

@ -6,7 +6,7 @@
div {
color: transparent;
background: blue;
font-family: monospace;
font-family: Ahem;
font-size: 50px;
width: 3ch;
}

View file

@ -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;

View file

@ -9,7 +9,7 @@ aside {
}
div {
color: transparent;
font-family: monospace;
font-family: Ahem;
font-size: 50px;
width: 5ch;
}

View file

@ -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;

View file

@ -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,

View file

@ -15,6 +15,7 @@ aside {
}
div {
color: transparent;
font-family: Ahem;
font-size: 50px;
width: 0ch;
}

View file

@ -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. */

View file

@ -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());
}

View file

@ -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>

View file

@ -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>

View file

@ -1 +0,0 @@
Feature-Policy: legacy-image-formats 'none'

View file

@ -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;

View file

@ -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;

View file

@ -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;

View file

@ -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

View file

@ -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

View file

@ -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;

View file

@ -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;

View file

@ -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())

View file

@ -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)

View file

@ -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";

View file

@ -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());

View file

@ -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"};

View file

@ -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"
};

View file

@ -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},

View file

@ -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>

View file

@ -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 => {