diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2018-05-22 01:02:14 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-22 01:02:14 -0400 |
commit | d4df55b417d1d77c76eec185982c3badb7b398cc (patch) | |
tree | 2e9426f5be859dfade7561607609ead3282872f3 | |
parent | f8a96ad5d624beac5cb86bed2c7b214fc7cf7899 (diff) | |
parent | 496933fbc3859ad0d90cf40b8e3220a5cff24708 (diff) | |
download | servo-d4df55b417d1d77c76eec185982c3badb7b398cc.tar.gz servo-d4df55b417d1d77c76eec185982c3badb7b398cc.zip |
Auto merge of #20845 - servo-wpt-sync:wpt_update_21-05-2018, r=jdm
Sync WPT with upstream (21-05-2018)
Automated downstream sync of changes from upstream as of 21-05-2018.
[no-wpt-sync]
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/20845)
<!-- Reviewable:end -->
49 files changed, 580 insertions, 278 deletions
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json index 581f5b7a4c3..77861123680 100644 --- a/tests/wpt/metadata/MANIFEST.json +++ b/tests/wpt/metadata/MANIFEST.json @@ -46877,6 +46877,18 @@ {} ] ], + "css/CSS2/floats-clear/adjoining-float-before-clearance.html": [ + [ + "/css/CSS2/floats-clear/adjoining-float-before-clearance.html", + [ + [ + "/css/CSS2/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], "css/CSS2/floats-clear/adjoining-float-new-fc.html": [ [ "/css/CSS2/floats-clear/adjoining-float-new-fc.html", @@ -47393,6 +47405,18 @@ {} ] ], + "css/CSS2/floats-clear/clear-with-top-margin-after-cleared-empty-block.html": [ + [ + "/css/CSS2/floats-clear/clear-with-top-margin-after-cleared-empty-block.html", + [ + [ + "/css/reference/ref-filled-green-100px-square-only.html", + "==" + ] + ], + {} + ] + ], "css/CSS2/floats-clear/clearance-006.xht": [ [ "/css/CSS2/floats-clear/clearance-006.xht", @@ -49109,6 +49133,30 @@ {} ] ], + "css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html": [ + [ + "/css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html", + [ + [ + "/css/CSS2/reference/ref-filled-green-100px-square.xht", + "==" + ] + ], + {} + ] + ], + "css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html": [ + [ + "/css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html", + [ + [ + "/css/reference/ref-filled-green-100px-square-only.html", + "==" + ] + ], + {} + ] + ], "css/CSS2/floats-clear/nested-clearance-new-formatting-context.html": [ [ "/css/CSS2/floats-clear/nested-clearance-new-formatting-context.html", @@ -179478,7 +179526,7 @@ "/fetch/corb/img-html-correctly-labeled.sub.html", [ [ - "/fetch/corb/img-png-mislabeled-as-html.sub-ref.html", + "/fetch/corb/img-html-correctly-labeled.sub-ref.html", "==" ] ], @@ -179490,7 +179538,7 @@ "/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html", [ [ - "/fetch/corb/img-png-mislabeled-as-html.sub-ref.html", + "/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub-ref.html", "==" ] ], @@ -243246,11 +243294,6 @@ {} ] ], - "css/css-fonts/support/fonts/FontWithFeatures.otf": [ - [ - {} - ] - ], "css/css-fonts/support/fonts/FontWithFeatures2.otf": [ [ {} @@ -243281,16 +243324,6 @@ {} ] ], - "css/css-fonts/support/fonts/font-feature-settings-rendering-2-ref.html": [ - [ - {} - ] - ], - "css/css-fonts/support/fonts/font-feature-settings-rendering-2.html": [ - [ - {} - ] - ], "css/css-fonts/support/fonts/gsubtest-features.js": [ [ {} @@ -299831,6 +299864,11 @@ {} ] ], + "webusb/resources/idlharness.dedicatedworker.sharedworker.js": [ + [ + {} + ] + ], "webusb/resources/open-in-iframe.html": [ [ {} @@ -302601,6 +302639,11 @@ {} ] ], + "x-frame-options/OWNERS": [ + [ + {} + ] + ], "x-frame-options/README.md": [ [ {} @@ -321792,6 +321835,12 @@ {} ] ], + "css/css-transitions/zero-duration-multiple-transition.html": [ + [ + "/css/css-transitions/zero-duration-multiple-transition.html", + {} + ] + ], "css/css-typed-om/CSSMatrixComponent-DOMMatrix-mutable.html": [ [ "/css/css-typed-om/CSSMatrixComponent-DOMMatrix-mutable.html", @@ -368812,6 +368861,12 @@ {} ] ], + "shadow-dom/form-control-form-attribute.html": [ + [ + "/shadow-dom/form-control-form-attribute.html", + {} + ] + ], "shadow-dom/historical.html": [ [ "/shadow-dom/historical.html", @@ -376882,6 +376937,18 @@ {} ] ], + "webusb/worker/idlharness.dedicatedworker.https.html": [ + [ + "/webusb/worker/idlharness.dedicatedworker.https.html", + {} + ] + ], + "webusb/worker/idlharness.sharedworker.https.html": [ + [ + "/webusb/worker/idlharness.sharedworker.https.html", + {} + ] + ], "webusb/worker/usb.dedicatedworker.https.html": [ [ "/webusb/worker/usb.dedicatedworker.https.html", @@ -397738,12 +397805,6 @@ {} ] ], - "css/css-color/t451-system-colors-a.xht": [ - [ - "/css/css-color/t451-system-colors-a.xht", - {} - ] - ], "css/css-display/run-in/after-content-display-004.xht": [ [ "/css/css-display/run-in/after-content-display-004.xht", @@ -449429,6 +449490,10 @@ "a1b16dd5548c5b358564fa723ee30dd0b872aa46", "reftest" ], + "css/CSS2/floats-clear/adjoining-float-before-clearance.html": [ + "71693bc3d5e3c40930ebe589b7bad9043416d569", + "reftest" + ], "css/CSS2/floats-clear/adjoining-float-new-fc.html": [ "c9b1c2a88838d119a7a472f99e44e3e245eb16ee", "reftest" @@ -449685,6 +449750,10 @@ "63c9122c39983b4c3a7d10f92399e746411022c3", "reftest" ], + "css/CSS2/floats-clear/clear-with-top-margin-after-cleared-empty-block.html": [ + "ae674d400a7a113db4e3a1333506799eb5f36edc", + "reftest" + ], "css/CSS2/floats-clear/clearance-006-ref.xht": [ "2305823fd342085286fe1f5e0cdb27d7cd6fe436", "support" @@ -450753,6 +450822,14 @@ "b4347b446723cc1bfd3476c457858a780064e001", "reftest" ], + "css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html": [ + "a4afc3f1c5ad23b29c0c80a491845974a4dbbf93", + "reftest" + ], + "css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html": [ + "bb345cfc476310428cfe622872c6444c3ff4f349", + "reftest" + ], "css/CSS2/floats-clear/nested-clearance-new-formatting-context.html": [ "4e6792f21e342e655c066de8091c904994ec0e5d", "reftest" @@ -496269,10 +496346,6 @@ "87ea86999193bd7168011efbc0a195b1a988f0f5", "reftest" ], - "css/css-color/t451-system-colors-a.xht": [ - "7faa76d4cba74222102a185c6fb5e46436a2dc9b", - "visual" - ], "css/css-color/whitetext-ref.html": [ "e832afff6067587e429b47ed0ea1756a4bad3b81", "support" @@ -503189,10 +503262,6 @@ "ce1bc123ba75345ab3816af7c18b481badbfd5eb", "support" ], - "css/css-fonts/support/fonts/FontWithFeatures.otf": [ - "f8de3477e7c261c61f339583fc6cea73d0c5e87b", - "support" - ], "css/css-fonts/support/fonts/FontWithFeatures2.otf": [ "e66cdd917334803327991dcc106f9d06a7c3a6e2", "support" @@ -503217,14 +503286,6 @@ "69e4080710f24b062203f56aa6ae2d991d4fa19a", "support" ], - "css/css-fonts/support/fonts/font-feature-settings-rendering-2-ref.html": [ - "883083cdde66caca05384d3d6930070454e94fad", - "support" - ], - "css/css-fonts/support/fonts/font-feature-settings-rendering-2.html": [ - "2d2798f70ee846150d05a100764e839be196f7c6", - "support" - ], "css/css-fonts/support/fonts/gsubtest-features.js": [ "ec74e59b44373f2e57b321bf6388e05b2c071a91", "support" @@ -532377,6 +532438,10 @@ "538b95863c061da60e95c1a61ef9dc93da007aa4", "testharness" ], + "css/css-transitions/zero-duration-multiple-transition.html": [ + "bcbcd704e617cf1bb057a67d9ff5635ef6ebda7e", + "testharness" + ], "css/css-typed-om/CSSMatrixComponent-DOMMatrix-mutable.html": [ "f6056e2480829c7aa9885673d332496faf7777b5", "testharness" @@ -532626,7 +532691,7 @@ "testharness" ], "css/css-typed-om/stylevalue-subclasses/numeric-objects/parse.tentative.html": [ - "a17c4fdc29c474edb1ef3f94d5282d2603dd7227", + "a96190f4a188be1bda9c8259dc2a19703cc134d0", "testharness" ], "css/css-typed-om/stylevalue-subclasses/numeric-objects/resources/testhelper.js": [ @@ -543986,7 +544051,7 @@ "testharness" ], "css/cssom/getComputedStyle-detached-subtree.html": [ - "72b04b3245851e5a5ac26429986074e07ad369d9", + "01978ca7ea08cbf61b28e9d77753fe5852bcbff9", "testharness" ], "css/cssom/getComputedStyle-dynamic-subdoc.html": [ @@ -546926,7 +546991,7 @@ "testharness" ], "css/selectors/invalidation/matches.html": [ - "8b517e6bc3465a2e8569bfe79dcb92aad38b5e78", + "2be24b8253b13cc0fa9e492ea512c6709dab85c4", "testharness" ], "css/selectors/invalidation/quirks-mode-stylesheet-dynamic-add-001.html": [ @@ -562382,7 +562447,7 @@ "support" ], "fetch/corb/img-html-correctly-labeled.sub.html": [ - "0c080d27dfcc89fc1f7e92be063f4d2d95fa9d6c", + "13c1685c4acf66de49af2d090bc75656c713656c", "reftest" ], "fetch/corb/img-mime-types-coverage.tentative.sub.html": [ @@ -562394,7 +562459,7 @@ "support" ], "fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html": [ - "2005cb1cd7a313d8ca7ee89c32e5bc54c39b2da5", + "123764674bc8bc40e3a36edd3c128c6131a37cc4", "reftest" ], "fetch/corb/img-png-mislabeled-as-html.sub-ref.html": [ @@ -563574,7 +563639,7 @@ "manual" ], "gamepad/idlharness.html": [ - "acf9bec9b03479458c4b8b17a1d4ef9f87d15d7b", + "7b886df0d36a15f77936943eadecd633d9ea46f1", "testharness" ], "gamepad/timestamp-manual.html": [ @@ -564742,7 +564807,7 @@ "support" ], "html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html": [ - "49a3e27670f5902309f45be654ad9e12d7f9c500", + "8e48ede5ef227e88a091f1d33b385d0b3dff713c", "testharness" ], "html/browsers/browsing-the-web/unloading-documents/pagehide-on-history-forward-1.html": [ @@ -583906,7 +583971,7 @@ "support" ], "interfaces/webusb.idl": [ - "7b5749e1fece69552e0a8bfac7af401fac15394d", + "e609a866d40f70f59f682a1a5ec82cf713863969", "support" ], "interfaces/webvtt.idl": [ @@ -606801,6 +606866,10 @@ "572ddb9624ba8871d93cb13fad830f1acc8d4cac", "testharness" ], + "shadow-dom/form-control-form-attribute.html": [ + "7726f8fe9056d3d5c9fb7b963c4bc6e777a8256a", + "testharness" + ], "shadow-dom/historical.html": [ "1469992db34a25397dc3d5a5e1eb600e8afcf71b", "testharness" @@ -617174,7 +617243,7 @@ "testharness" ], "webstorage/eventTestHarness.js": [ - "7620e4b6d1badeb105c8f576ad0f03040cef5c66", + "1904bb024612309549e715cd1f5ca1e990a82aef", "support" ], "webstorage/event_basic.html": [ @@ -617182,7 +617251,7 @@ "testharness" ], "webstorage/event_basic.js": [ - "6ec57795d1d437d08c2e1d8ff1aac8bc6fc24b7a", + "f3644a379740bede29593e04b9bef5dfd34c3641", "support" ], "webstorage/event_body_attribute.html": [ @@ -617434,13 +617503,17 @@ "support" ], "webusb/idlharness.https.html": [ - "135ae431cdac90d34b85fe1ea355abaf9a9fb732", + "5a97c893eb0e23e3cba14501de9955cfbb0b385a", "testharness" ], "webusb/resources/fake-devices.js": [ "2cfce7b35b9441529946c4bcea9427e261808c36", "support" ], + "webusb/resources/idlharness.dedicatedworker.sharedworker.js": [ + "2a847fbeded0fe0b895cb5675f90b685f749f40a", + "support" + ], "webusb/resources/open-in-iframe.html": [ "6e6050f742e0da58fc94a5c0a0aa75f16dfcede9", "support" @@ -617525,6 +617598,14 @@ "f08a98a927d57cda8b780a8304a0fa6cf727cc81", "testharness" ], + "webusb/worker/idlharness.dedicatedworker.https.html": [ + "159ede02aac087e0409632c2fcbac3a597ec4c45", + "testharness" + ], + "webusb/worker/idlharness.sharedworker.https.html": [ + "4dc8b85f2590397f6e8bcbf63dc64381b1f95559", + "testharness" + ], "webusb/worker/usb.dedicatedworker.https.html": [ "556e26de5f184609e0e49f02795f96aef524a7c2", "testharness" @@ -621745,6 +621826,10 @@ "2984dfb09c88d7a1831a60d62c64c9b2ec2f6673", "support" ], + "x-frame-options/OWNERS": [ + "130bf16890c75f9520c9473a7888bf6163036123", + "support" + ], "x-frame-options/README.md": [ "cb5f2cb5d74263ce584e1ad76045a04afae4ba0a", "support" @@ -621810,7 +621895,7 @@ "testharness" ], "xhr/abort-after-stop.htm": [ - "3feb39f2451afa624771437337c669865fac29b5", + "8822f48665a569b37bde50995c48687825672a50", "testharness" ], "xhr/abort-after-timeout.htm": [ diff --git a/tests/wpt/metadata/css/CSS2/floats-clear/adjoining-float-before-clearance.html.ini b/tests/wpt/metadata/css/CSS2/floats-clear/adjoining-float-before-clearance.html.ini new file mode 100644 index 00000000000..2f89f4d6f7e --- /dev/null +++ b/tests/wpt/metadata/css/CSS2/floats-clear/adjoining-float-before-clearance.html.ini @@ -0,0 +1,2 @@ +[adjoining-float-before-clearance.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html.ini b/tests/wpt/metadata/css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html.ini new file mode 100644 index 00000000000..1d5b877b2ee --- /dev/null +++ b/tests/wpt/metadata/css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html.ini @@ -0,0 +1,2 @@ +[negative-clearance-after-adjoining-float.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html.ini b/tests/wpt/metadata/css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html.ini new file mode 100644 index 00000000000..85b954771e1 --- /dev/null +++ b/tests/wpt/metadata/css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html.ini @@ -0,0 +1,2 @@ +[negative-clearance-after-bottom-margin.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/CSS2/selectors/first-letter-punctuation-033.xht.ini b/tests/wpt/metadata/css/CSS2/selectors/first-letter-punctuation-033.xht.ini index 560c2795527..075153c4929 100644 --- a/tests/wpt/metadata/css/CSS2/selectors/first-letter-punctuation-033.xht.ini +++ b/tests/wpt/metadata/css/CSS2/selectors/first-letter-punctuation-033.xht.ini @@ -1,3 +1,3 @@ [first-letter-punctuation-033.xht] type: reftest - expected: FAIL + expected: TIMEOUT diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-015.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-015.html.ini index b2944714a37..dc5ca45dad4 100644 --- a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-015.html.ini +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-015.html.ini @@ -3,3 +3,4 @@ [ ] expected: if os == "mac": FAIL + diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-033.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-033.html.ini index 6ae3d4d4574..e9227f0840f 100644 --- a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-033.html.ini +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-033.html.ini @@ -3,3 +3,4 @@ [ ] expected: if os == "mac": FAIL + diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-034.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-034.html.ini index 8fe184eb98e..cbe3865a2be 100644 --- a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-034.html.ini +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-034.html.ini @@ -3,3 +3,4 @@ [ ] expected: if os == "mac": FAIL + diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-035.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-035.html.ini index caf9ac5e95c..80b4dbb7a65 100644 --- a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-035.html.ini +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-035.html.ini @@ -3,3 +3,4 @@ [ ] expected: if os == "mac": FAIL + diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-037.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-037.html.ini index 95fd8784e41..2a98cb88651 100644 --- a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-037.html.ini +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-baspglwj-037.html.ini @@ -3,3 +3,4 @@ [ ] expected: if os == "mac": FAIL + diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-017.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-017.html.ini new file mode 100644 index 00000000000..1c62f6a6f63 --- /dev/null +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-017.html.ini @@ -0,0 +1,2 @@ +[css3-text-line-break-opclns-017.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-024.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-024.html.ini new file mode 100644 index 00000000000..67a20918e67 --- /dev/null +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-024.html.ini @@ -0,0 +1,2 @@ +[css3-text-line-break-opclns-024.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-121.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-121.html.ini new file mode 100644 index 00000000000..2a328fb695a --- /dev/null +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-121.html.ini @@ -0,0 +1,2 @@ +[css3-text-line-break-opclns-121.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-129.html.ini b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-129.html.ini new file mode 100644 index 00000000000..e2d8b10ad53 --- /dev/null +++ b/tests/wpt/metadata/css/css-text/i18n/css3-text-line-break-opclns-129.html.ini @@ -0,0 +1,2 @@ +[css3-text-line-break-opclns-129.html] + expected: FAIL diff --git a/tests/wpt/metadata/css/css-transitions/zero-duration-multiple-transition.html.ini b/tests/wpt/metadata/css/css-transitions/zero-duration-multiple-transition.html.ini new file mode 100644 index 00000000000..61f15d173c0 --- /dev/null +++ b/tests/wpt/metadata/css/css-transitions/zero-duration-multiple-transition.html.ini @@ -0,0 +1,4 @@ +[zero-duration-multiple-transition.html] + [transition-duration of 0 prevents earlier transitions with the same property from starting.] + expected: FAIL + diff --git a/tests/wpt/metadata/css/css-values/vh_not_refreshing_on_chrome.html.ini b/tests/wpt/metadata/css/css-values/vh_not_refreshing_on_chrome.html.ini deleted file mode 100644 index 26435e28b09..00000000000 --- a/tests/wpt/metadata/css/css-values/vh_not_refreshing_on_chrome.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[vh_not_refreshing_on_chrome.html] - expected: FAIL diff --git a/tests/wpt/metadata/fetch/corb/img-html-correctly-labeled.sub.html.ini b/tests/wpt/metadata/fetch/corb/img-html-correctly-labeled.sub.html.ini deleted file mode 100644 index a3ca93e9771..00000000000 --- a/tests/wpt/metadata/fetch/corb/img-html-correctly-labeled.sub.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[img-html-correctly-labeled.sub.html] - expected: FAIL diff --git a/tests/wpt/metadata/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html.ini b/tests/wpt/metadata/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html.ini new file mode 100644 index 00000000000..32ccb8a0e2b --- /dev/null +++ b/tests/wpt/metadata/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html.ini @@ -0,0 +1,2 @@ +[img-png-mislabeled-as-html-nosniff.tentative.sub.html] + expected: FAIL diff --git a/tests/wpt/metadata/html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html.ini b/tests/wpt/metadata/html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html.ini new file mode 100644 index 00000000000..c05ae4896da --- /dev/null +++ b/tests/wpt/metadata/html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html.ini @@ -0,0 +1,4 @@ +[navigation-within-beforeunload.html] + [Triggering navigation from within beforeunload event] + expected: FAIL + diff --git a/tests/wpt/metadata/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html.ini b/tests/wpt/metadata/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html.ini index 6832a13a9e9..5a88776ce4c 100644 --- a/tests/wpt/metadata/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html.ini +++ b/tests/wpt/metadata/html/browsers/history/the-location-interface/location-protocol-setter-non-broken.html.ini @@ -30,3 +30,6 @@ [Set HTTP URL frame location.protocol to http+x] expected: FAIL + [Set HTTP URL frame location.protocol to data] + expected: FAIL + diff --git a/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini index 1de3f8d68b2..559c27de134 100644 --- a/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini +++ b/tests/wpt/metadata/html/semantics/embedded-content/image-maps/image-map-processing-model/hash-name-reference.html.ini @@ -172,3 +172,63 @@ [XHTML img usemap="http://example.org/#garbage-before-hash-id"] expected: FAIL + [HTML (quirks) IMG usemap="no-hash-name"] + expected: FAIL + + [HTML (quirks) IMG usemap="no-hash-id"] + expected: FAIL + + [HTML (quirks) IMG usemap="hash-last#"] + expected: FAIL + + [HTML (quirks) IMG usemap=""] + expected: FAIL + + [HTML (quirks) IMG usemap="#"] + expected: FAIL + + [HTML (quirks) IMG usemap="#percent-escape-name-%41"] + expected: FAIL + + [HTML (quirks) IMG usemap="#percent-escape-id-%41"] + expected: FAIL + + [HTML (quirks) IMG usemap="#no-such-map"] + expected: FAIL + + [HTML (quirks) IMG usemap="#different-CASE-name"] + expected: FAIL + + [HTML (quirks) IMG usemap="#different-CASE-id"] + expected: FAIL + + [XHTML img usemap="no-hash-name"] + expected: FAIL + + [XHTML img usemap="no-hash-id"] + expected: FAIL + + [XHTML img usemap="hash-last#"] + expected: FAIL + + [XHTML img usemap=""] + expected: FAIL + + [XHTML img usemap="#"] + expected: FAIL + + [XHTML img usemap="#percent-escape-name-%41"] + expected: FAIL + + [XHTML img usemap="#percent-escape-id-%41"] + expected: FAIL + + [XHTML img usemap="#no-such-map"] + expected: FAIL + + [XHTML img usemap="#different-CASE-name"] + expected: FAIL + + [XHTML img usemap="#different-CASE-id"] + expected: FAIL + diff --git a/tests/wpt/mozilla/meta/css/iframe/hide_after_load.html.ini b/tests/wpt/mozilla/meta/css/iframe/hide_after_load.html.ini deleted file mode 100644 index 65c78fd3a4a..00000000000 --- a/tests/wpt/mozilla/meta/css/iframe/hide_after_load.html.ini +++ /dev/null @@ -1,2 +0,0 @@ -[hide_after_load.html] - expected: TIMEOUT diff --git a/tests/wpt/mozilla/meta/webgl/conformance-1.0.3/conformance/canvas/rapid-resizing.html.ini b/tests/wpt/mozilla/meta/webgl/conformance-1.0.3/conformance/canvas/rapid-resizing.html.ini deleted file mode 100644 index 1e2567027d8..00000000000 --- a/tests/wpt/mozilla/meta/webgl/conformance-1.0.3/conformance/canvas/rapid-resizing.html.ini +++ /dev/null @@ -1,5 +0,0 @@ -[rapid-resizing.html] - expected: TIMEOUT - [Overall test] - expected: NOTRUN - diff --git a/tests/wpt/web-platform-tests/css/CSS2/floats-clear/adjoining-float-before-clearance.html b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/adjoining-float-before-clearance.html new file mode 100644 index 00000000000..13041a27496 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/adjoining-float-before-clearance.html @@ -0,0 +1,13 @@ +<!DOCTYPE html> +<title>Float that would be adjoining if there were no clearance</title> +<meta name="assert" content="If the clearance candidate would pull a float down with it (due to margin collapsing) if there were no clearance, clearance needs to be inserted to separate the two, so that the block can go past the float. No matter how large the margin is, it should still be just below the float."> +<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org"> +<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#flow-control" title="9.5.2 Controlling flow next to floats: the 'clear' property"> +<link rel="match" href="../reference/ref-filled-green-100px-square.xht" /> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="width:100px; background:red;"> + <div> + <div style="float:left; width:100px; height:50px; background:green;"></div> + </div> + <div style="margin-top:400px; clear:left; height:50px; background:green;"></div> +</div> diff --git a/tests/wpt/web-platform-tests/css/CSS2/floats-clear/clear-with-top-margin-after-cleared-empty-block.html b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/clear-with-top-margin-after-cleared-empty-block.html new file mode 100644 index 00000000000..5d0fba7981f --- /dev/null +++ b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/clear-with-top-margin-after-cleared-empty-block.html @@ -0,0 +1,12 @@ +<!DOCTYPE html> +<title>Clearance on empty block followed by block with large margin and 'clear'</title> +<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org"> +<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#flow-control" title="9.5.2 Controlling flow next to floats: the 'clear' property"> +<link rel="help" href="https://www.w3.org/TR/CSS22/box.html#collapsing-margins" title="8.3.1 Collapsing margins"> +<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html"> +<p>Test passes if there is a filled green square.</p> +<div style="position:relative; width:100px; border-top:1px solid white; top:-21px; z-index:-1; background:green;"> + <div style="float:left; width:100px; height:20px; background:white;"></div> + <div style="clear:both;"></div> + <div style="clear:both; margin-top:100px; height:20px; background:white;"></div> +</div> diff --git a/tests/wpt/web-platform-tests/css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html new file mode 100644 index 00000000000..698f3807903 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/negative-clearance-after-adjoining-float.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<title>Negative clearance between adjoining float and child with top margin</title> +<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org"> +<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#flow-control" title="9.5.2 Controlling flow next to floats: the 'clear' property"> +<link rel="match" href="../reference/ref-filled-green-100px-square.xht" /> +<p>Test passes if there is a filled green square and <strong>no red</strong>.</p> +<div style="width:100px; background:red;"> + <div style="float:left; width:100px; height:50px; background:green;"></div> + <div style="clear:left; margin-top:200px;"></div> +</div> +<div style="width:100px; height:50px; background:green;"></div> diff --git a/tests/wpt/web-platform-tests/css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html new file mode 100644 index 00000000000..fb0663945eb --- /dev/null +++ b/tests/wpt/web-platform-tests/css/CSS2/floats-clear/negative-clearance-after-bottom-margin.html @@ -0,0 +1,16 @@ +<!DOCTYPE html> +<title>Negative clearance between bottom margin and cleared child with top margin</title> +<link rel="author" title="Morten Stenshorne" href="mstensho@chromium.org"> +<link rel="help" href="https://www.w3.org/TR/CSS22/visuren.html#flow-control" title="9.5.2 Controlling flow next to floats: the 'clear' property"> +<link rel="match" href="../../reference/ref-filled-green-100px-square-only.html"> +<p>Test passes if there is a filled green square.</p> +<div style="position:relative; top:-50px; z-index:-1;"> + <div style="float:left; width:50px; height:50px; border-top:50px solid white; background:green;"></div> + <div style="padding-top:1px;"> + <div style="width:100px; background:green;"> + <div style="margin-bottom:49px;"></div> + <div style="clear:left; margin-top:98px;"></div> + </div> + <div style="width:100px; height:50px; background:green;"></div> + </div> +</div> diff --git a/tests/wpt/web-platform-tests/css/css-color/t451-system-colors-a.xht b/tests/wpt/web-platform-tests/css/css-color/t451-system-colors-a.xht deleted file mode 100644 index bb6f13ead7a..00000000000 --- a/tests/wpt/web-platform-tests/css/css-color/t451-system-colors-a.xht +++ /dev/null @@ -1,74 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> -<html xmlns="http://www.w3.org/1999/xhtml"> - <head> - <title>CSS Test: system colors</title> - <link rel="author" title="L. David Baron" href="https://dbaron.org/" /> - <link rel="author" title="Mozilla Corporation" href="http://mozilla.com/" /> - <link rel="help" href="http://www.w3.org/TR/css3-color/#css2-system" /> - <meta name="flags" content="" /> - <meta name="assert" content="That system colors are displayed as described." /> - <style type="text/css"><![CDATA[ - html, body { background: #9f9; } - p, div { border: medium solid red; background: red; color: red; } - ]]></style> - </head> - <body> - - <p style="border: none; background: white; color: black">Nothing in this document should be red unless the operating environment provides red as a color for one of the things mentioned.</p> - - <p style="border: none; background: white; color: black">Every line of text in this document should be a color distinct enough from its background to be legible.</p> - - <p style="border-top: 4px solid ButtonHighlight; border-right: 4px solid ButtonShadow; border-bottom: 4px solid ButtonShadow; border-left: 4px solid ButtonHighlight; background: ButtonFace; color: ButtonText"> - This should have the text color, background color, and solid border that makes it look like the closest simulation of a raised button (with the light source in the upper left) in the operating environment that is possible using a box with a single border around it. - </p> - - <div style="border-top: 2px solid ThreeDHighlight; border-right: 2px solid ThreeDDarkShadow; border-bottom: 2px solid ThreeDDarkShadow; border-left: 2px solid ThreeDHighlight"> - <div style="border-top: 2px solid ThreeDLightShadow; border-right: 2px solid ThreeDShadow; border-bottom: 2px solid ThreeDShadow; border-left: 2px solid ThreeDLightShadow; background: ThreeDFace; color: ButtonText"> - <!-- is ButtonText an appropriate color to use here? --> - This should have the background color and <em>two</em> solid borders that makes it look like the closest simulation of a raised button (with the light source in the upper left) in the operating environment that is possible using a box with a two-layer border around it. - </div> - </div> - - <p style="border: medium solid ActiveBorder; background: ActiveCaption; color: CaptionText">If the operating environment provides such colors, this should have the text color and background color of an active window caption, and a border the color of the border of active windows.</p> - - <p style="border: medium solid InactiveBorder; background: InactiveCaption; color: InactiveCaptionText">If the operating environment provides such colors, this should have the text color and background color of an inactive window caption, and a border the color of the border of inactive windows.</p> - - <p style="border: none; background: AppWorkspace; color: WindowText"> - This should have the background color used by multiple document interface (MDI) applications, if the operating environment provides such a color. - </p> - - <p style="background: Background; color: WindowText; border: none"> - This should have the background color of the desktop, if the operating environment provides such a color. - </p> - - <p style="background: Window; color: GrayText; border: none"> - This should have the text color of disabled controls, if the operating environment provides such a color. - </p> - - <p style="background: Highlight; color: HighlightText; border: none"> - This should have the text color and background color of highlighted items, if the operating system provides such colors. - </p> - - <p style="background: InfoBackground; color: InfoText; border: none"> - This should have the text color and background color of tooltips, if the operating system provides such colors. - </p> - - <p style="background: Menu; color: MenuText; border: none"> - This should have the text color and background color of menus, if the operating system provides such colors. - </p> - - <p style="border: none; background: white; color: black">The following (empty) square should have the background color of the area that scrollbar sliders slide over, if the operating environment provides such a color:</p> - <p style="background: Scrollbar; color: CaptionText; border: none; margin-left: auto; margin-right: auto; width: 2em; height: 2em;"> - - </p> - - <p style="background: Window; color: WindowText; border: none"> - This should have the text color and background color of text fields, if the operating system provides such colors. - </p> - - <p style="border: 2px solid WindowFrame; background: white; color: black"> - This should have a border the color of a window's frame, if the operating system provides such a color. - </p> - - </body> -</html> diff --git a/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/FontWithFeatures.otf b/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/FontWithFeatures.otf Binary files differdeleted file mode 100644 index 3e506999524..00000000000 --- a/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/FontWithFeatures.otf +++ /dev/null diff --git a/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/font-feature-settings-rendering-2-ref.html b/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/font-feature-settings-rendering-2-ref.html deleted file mode 100644 index 774481b4d9b..00000000000 --- a/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/font-feature-settings-rendering-2-ref.html +++ /dev/null @@ -1,46 +0,0 @@ -<!DOCTYPE html> -<html> -<head> -<style> -@font-face { - font-family: "FontFeaturesTest"; - src: url("FontWithFeatures.otf") format("opentype"); -} -</style> -</head> -<body> -This tests that font features are able to be turned on and off as desired. It uses a special font -designed specifically for this purpose. The test passes if you see a sequence of alternating check -marks and X below. -<div><span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -<span style="font-family: FontFeaturesTest;">BA</span> -</div> -</body> -</html> diff --git a/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/font-feature-settings-rendering-2.html b/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/font-feature-settings-rendering-2.html deleted file mode 100644 index f55242573bb..00000000000 --- a/tests/wpt/web-platform-tests/css/css-fonts/support/fonts/font-feature-settings-rendering-2.html +++ /dev/null @@ -1,60 +0,0 @@ -<!DOCTYPE html> -<html> -<head> -<style> -@font-face { - font-family: "FontFeaturesTest"; - src: url("resources/FontWithFeatures.otf") format("opentype"); -} -</style> -</head> -<body> -This tests that font features are able to be turned on and off as desired. It uses a special font -designed specifically for this purpose. The test passes if you see a sequence of alternating check -marks and X below. -<div id="insertionpoint"></div> -<script> -var insertionpoint = document.getElementById("insertionpoint"); -function addElement(feature, c) { - ["0", "1"].map(function(state) { - var element = document.createElement("span"); - element.textContent = c; - element.style.fontFamily = "FontFeaturesTest"; - element.style.webkitFontFeatureSettings = '"' + feature + '" ' + state; - insertionpoint.appendChild(element); - }); - insertionpoint.appendChild(document.createTextNode(" ")); -} -addElement("liga", "C"); -addElement("clig", "D"); -addElement("dlig", "E"); -addElement("hlig", "F"); -addElement("calt", "G"); -addElement("subs", "H"); -addElement("sups", "I"); -addElement("smcp", "J"); -addElement("c2sc", "K"); -addElement("pcap", "L"); -addElement("c2pc", "M"); -addElement("unic", "N"); -addElement("titl", "O"); -addElement("onum", "P"); -addElement("pnum", "Q"); -addElement("tnum", "R"); -addElement("frac", "S"); -//addElement("afrc", "T"); -addElement("ordn", "U"); -addElement("zero", "V"); -addElement("hist", "W"); -addElement("jp78", "X"); -addElement("jp83", "Y"); -addElement("jp90", "Z"); -addElement("jp04", "a"); -addElement("smpl", "b"); -addElement("trad", "c"); -addElement("fwid", "d"); -addElement("pwid", "e"); -addElement("ruby", "f"); -</script> -</body> -</html> diff --git a/tests/wpt/web-platform-tests/css/css-transitions/zero-duration-multiple-transition.html b/tests/wpt/web-platform-tests/css/css-transitions/zero-duration-multiple-transition.html new file mode 100644 index 00000000000..4268ce766d7 --- /dev/null +++ b/tests/wpt/web-platform-tests/css/css-transitions/zero-duration-multiple-transition.html @@ -0,0 +1,30 @@ +<!doctype html> +<meta charset="utf-8"> +<link rel="help" href="https://drafts.csswg.org/css-transitions/#starting"> +<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1461070"> +<link rel="author" title="Emilio Cobos Álvarez" href="emilio@crisal.io"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<style> + #t { + color: red; + transition-property: color, color; + transition-duration: 1s, 0s; + } +</style> +<div id="t"></div> +<script> +test(function() { + let div = document.getElementById("t"); + assert_equals(getComputedStyle(div).color, "rgb(255, 0, 0)"); + + div.style.color = "green"; + assert_equals( + div.getAnimations().length, + 0, + "No transition should've started" + ); + + assert_equals(getComputedStyle(div).color, "rgb(0, 128, 0)"); +}, "transition-duration of 0 prevents earlier transitions with the same property from starting."); +</script> diff --git a/tests/wpt/web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/parse.tentative.html b/tests/wpt/web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/parse.tentative.html index 6b623c22c77..80e4f44b3a0 100644 --- a/tests/wpt/web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/parse.tentative.html +++ b/tests/wpt/web-platform-tests/css/css-typed-om/stylevalue-subclasses/numeric-objects/parse.tentative.html @@ -23,4 +23,8 @@ test(() => { assert_throws(new SyntaxError(), () => CSSNumericValue.parse('calc(calc(1px * 2s) + 3%)')); }, 'Parsing a calc with incompatible units throws a SyntaxError'); +test(() => { + assert_style_value_equals(new CSSUnitValue(1, 'px'), CSSNumericValue.parse(' 1px ')); +}, 'Parsing ignores surrounding spaces'); + </script> diff --git a/tests/wpt/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html b/tests/wpt/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html index 3b59ccb69c1..1cbb92a466e 100644 --- a/tests/wpt/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html +++ b/tests/wpt/web-platform-tests/css/cssom/getComputedStyle-detached-subtree.html @@ -17,7 +17,7 @@ function testNoComputedStyle(element, description) { assert_true(!!element); let style = getComputedStyle(element); assert_true(!!style); - assert_equals(style.length, 0); + assert_true(style.length === 0); assert_equals(style.color, ""); }, `getComputedStyle returns no style for ${description}`); } diff --git a/tests/wpt/web-platform-tests/css/selectors/invalidation/matches.html b/tests/wpt/web-platform-tests/css/selectors/invalidation/matches.html index ae5531ac5ca..634ded3c7d7 100644 --- a/tests/wpt/web-platform-tests/css/selectors/invalidation/matches.html +++ b/tests/wpt/web-platform-tests/css/selectors/invalidation/matches.html @@ -36,6 +36,9 @@ .a+.c>.e { color: black; } + .c>.a+.e { + color: black; + } .a+:matches(.b+.f, :matches(.c>.e, .g)) { color: red; } @@ -74,6 +77,7 @@ </div> </div> <div class="c" id="c2"> + <div id="a2"></div> <div class="e" id="e2"> Red </div> @@ -120,6 +124,8 @@ test(() => { a1.className = "a"; + assert_equals(getComputedStyle(e2).color, black); + a2.className = "a"; assert_equals(getComputedStyle(e2).color, red); }, "Invalidate nested :matches()."); diff --git a/tests/wpt/web-platform-tests/fetch/corb/img-html-correctly-labeled.sub.html b/tests/wpt/web-platform-tests/fetch/corb/img-html-correctly-labeled.sub.html index 78fc09f9b7f..844cd0c9270 100644 --- a/tests/wpt/web-platform-tests/fetch/corb/img-html-correctly-labeled.sub.html +++ b/tests/wpt/web-platform-tests/fetch/corb/img-html-correctly-labeled.sub.html @@ -6,6 +6,6 @@ --> <meta charset="utf-8"> <!-- Reference page uses same-origin resources, which are not CORB-eligible. --> -<link rel="match" href="img-png-mislabeled-as-html.sub-ref.html"> +<link rel="match" href="img-html-correctly-labeled.sub-ref.html"> <!-- www1 is cross-origin, so the HTTP response is CORB-eligible --> <img src="http://{{domains[www1]}}:{{ports[http][0]}}/fetch/corb/resources/html-correctly-labeled.html"> diff --git a/tests/wpt/web-platform-tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html b/tests/wpt/web-platform-tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html index a4e519d94fc..82adc47b0cf 100644 --- a/tests/wpt/web-platform-tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html +++ b/tests/wpt/web-platform-tests/fetch/corb/img-png-mislabeled-as-html-nosniff.tentative.sub.html @@ -6,6 +6,6 @@ --> <meta charset="utf-8"> <!-- Reference page uses same-origin resources, which are not CORB-eligible. --> -<link rel="match" href="img-png-mislabeled-as-html.sub-ref.html"> +<link rel="match" href="img-png-mislabeled-as-html-nosniff.tentative.sub-ref.html"> <!-- www1 is cross-origin, so the HTTP response is CORB-eligible --> <img src="http://{{domains[www1]}}:{{ports[http][0]}}/fetch/corb/resources/png-mislabeled-as-html-nosniff.png"> diff --git a/tests/wpt/web-platform-tests/gamepad/idlharness.html b/tests/wpt/web-platform-tests/gamepad/idlharness.html index 9719d020196..02737fcfe43 100644 --- a/tests/wpt/web-platform-tests/gamepad/idlharness.html +++ b/tests/wpt/web-platform-tests/gamepad/idlharness.html @@ -9,21 +9,22 @@ <script src="/resources/WebIDLParser.js"></script> <script src="/resources/idlharness.js"></script> <script> -"use strict"; + "use strict"; -promise_test(async () => { - const idl_array = new IdlArray(); - const gamepad_idl = await fetch("/interfaces/gamepad.idl").then(r => r.text()); - const dom = await fetch("/interfaces/dom.idl").then(r => r.text()); + promise_test(async () => { + const idl_array = new IdlArray(); + const gamepad_idl = await fetch("/interfaces/gamepad.idl").then(r => r.text()); + const dom = await fetch("/interfaces/dom.idl").then(r => r.text()); + const html = await fetch("/interfaces/html.idl").then(r => r.text()); - idl_array.add_untested_idls(dom, {only: ['Event', 'EventInit']}); - idl_array.add_untested_idls('interface Navigator {};'); - idl_array.add_idls(gamepad_idl); + idl_array.add_idls(gamepad_idl); + idl_array.add_dependency_idls(dom); + idl_array.add_dependency_idls(html); - idl_array.add_objects({ - GamepadEvent: [new GamepadEvent("something")], - Navigator: ["navigator"] - }); - idl_array.test(); -}, "Test IDL implementation of Gamepad API"); + idl_array.add_objects({ + GamepadEvent: [new GamepadEvent("something")], + Navigator: ["navigator"] + }); + idl_array.test(); + }, "Test IDL implementation of Gamepad API"); </script> diff --git a/tests/wpt/web-platform-tests/html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html b/tests/wpt/web-platform-tests/html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html index d6ecf5d52f3..d7131b00db9 100644 --- a/tests/wpt/web-platform-tests/html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html +++ b/tests/wpt/web-platform-tests/html/browsers/browsing-the-web/unloading-documents/navigation-within-beforeunload.html @@ -15,10 +15,7 @@ onload = function() {setTimeout(function() { iframe.onload = function() { setTimeout(function() {iframe.contentWindow.location="navigation-within-beforeunload-2.html";}, 100); - // Step 4 of https://html.spec.whatwg.org/multipage/browsing-the-web.html#navigating-across-documents - // doesn't seem to allow navigation within a beforeunload handler, - // so the counter should not go beyond 1. - iframe.onload = t.step_func(function() {assert_equals(counter, 1); t.done()}); + iframe.onload = t.step_func(function() {assert_equals(counter, 1000); t.done()}); }; iframe.src = "navigation-within-beforeunload-1.html?" + Math.random(); diff --git a/tests/wpt/web-platform-tests/interfaces/webusb.idl b/tests/wpt/web-platform-tests/interfaces/webusb.idl index bad8383c5ec..03e03b068c0 100644 --- a/tests/wpt/web-platform-tests/interfaces/webusb.idl +++ b/tests/wpt/web-platform-tests/interfaces/webusb.idl @@ -14,27 +14,37 @@ dictionary USBDeviceRequestOptions { required sequence<USBDeviceFilter> filters; }; +[Exposed=(DedicatedWorker, SharedWorker, Window), SecureContext] interface USB : EventTarget { attribute EventHandler onconnect; attribute EventHandler ondisconnect; Promise<sequence<USBDevice>> getDevices(); - Promise<USBDevice> requestDevice(USBDeviceRequestOptions options); + [Exposed=Window] Promise<USBDevice> requestDevice(USBDeviceRequestOptions options); }; -[SecureContext] +[Exposed=Window, SecureContext] partial interface Navigator { [SameObject] readonly attribute USB usb; }; +[Exposed=(DedicatedWorker, SharedWorker), SecureContext] +partial interface WorkerNavigator { + [SameObject] readonly attribute USB usb; +}; + dictionary USBConnectionEventInit : EventInit { required USBDevice device; }; -[Constructor(DOMString type, USBConnectionEventInit eventInitDict)] +[ + Constructor(DOMString type, USBConnectionEventInit eventInitDict), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBConnectionEvent : Event { [SameObject] readonly attribute USBDevice device; }; +[Exposed=(DedicatedWorker, SharedWorker, Window)] interface USBDevice { readonly attribute octet usbVersionMajor; readonly attribute octet usbVersionMinor; @@ -96,49 +106,73 @@ dictionary USBControlTransferParameters { required unsigned short index; }; -[Constructor(USBTransferStatus status, optional DataView? data)] +[ + Constructor(USBTransferStatus status, optional DataView? data), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBInTransferResult { readonly attribute DataView? data; readonly attribute USBTransferStatus status; }; -[Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0)] +[ + Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBOutTransferResult { readonly attribute unsigned long bytesWritten; readonly attribute USBTransferStatus status; }; -[Constructor(USBTransferStatus status, optional DataView? data)] +[ + Constructor(USBTransferStatus status, optional DataView? data), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBIsochronousInTransferPacket { readonly attribute DataView? data; readonly attribute USBTransferStatus status; }; -[Constructor(sequence<USBIsochronousInTransferPacket> packets, optional DataView? data)] +[ + Constructor(sequence<USBIsochronousInTransferPacket> packets, optional DataView? data), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBIsochronousInTransferResult { readonly attribute DataView? data; readonly attribute FrozenArray<USBIsochronousInTransferPacket> packets; }; -[Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0)] +[ + Constructor(USBTransferStatus status, optional unsigned long bytesWritten = 0), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBIsochronousOutTransferPacket { readonly attribute unsigned long bytesWritten; readonly attribute USBTransferStatus status; }; -[Constructor(sequence<USBIsochronousOutTransferPacket> packets)] +[ + Constructor(sequence<USBIsochronousOutTransferPacket> packets), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBIsochronousOutTransferResult { readonly attribute FrozenArray<USBIsochronousOutTransferPacket> packets; }; -[Constructor(USBDevice device, octet configurationValue)] +[ + Constructor(USBDevice device, octet configurationValue), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBConfiguration { readonly attribute octet configurationValue; readonly attribute DOMString? configurationName; readonly attribute FrozenArray<USBInterface> interfaces; }; -[Constructor(USBConfiguration configuration, octet interfaceNumber)] +[ + Constructor(USBConfiguration configuration, octet interfaceNumber), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBInterface { readonly attribute octet interfaceNumber; readonly attribute USBAlternateInterface alternate; @@ -146,7 +180,10 @@ interface USBInterface { readonly attribute boolean claimed; }; -[Constructor(USBInterface deviceInterface, octet alternateSetting)] +[ + Constructor(USBInterface deviceInterface, octet alternateSetting), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBAlternateInterface { readonly attribute octet alternateSetting; readonly attribute octet interfaceClass; @@ -167,7 +204,10 @@ enum USBEndpointType { "isochronous" }; -[Constructor(USBAlternateInterface alternate, octet endpointNumber, USBDirection direction)] +[ + Constructor(USBAlternateInterface alternate, octet endpointNumber, USBDirection direction), + Exposed=(DedicatedWorker, SharedWorker, Window) +] interface USBEndpoint { readonly attribute octet endpointNumber; readonly attribute USBDirection direction; diff --git a/tests/wpt/web-platform-tests/shadow-dom/form-control-form-attribute.html b/tests/wpt/web-platform-tests/shadow-dom/form-control-form-attribute.html new file mode 100644 index 00000000000..2e782b2587d --- /dev/null +++ b/tests/wpt/web-platform-tests/shadow-dom/form-control-form-attribute.html @@ -0,0 +1,80 @@ +<!doctype html> +<meta charset=utf-8> +<title>Form controls' form attribute</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<div id="testcontent"> + <form id="form">form</form> + <input id="input" form="form"> +</div> + +<script> + +test(() => { + assert_equals(document.getElementById('input').form, + document.getElementById('form')); +}, "Form control's form attribute should point to the form element."); + +test(() => { + var testcontent = document.getElementById("testcontent"); + var host = document.createElement("div"); + var sr = host.attachShadow({mode: "open"}); + sr.innerHTML = testcontent.innerHTML; + var input = sr.getElementById("input"); + var form = sr.getElementById("form"); + + // Should have null form when shadow DOM isn't connected. + assert_equals(input.form, null); + + testcontent.appendChild(host); + assert_equals(input.form, form); + + host.remove(); + assert_equals(input.form, null); + + testcontent.appendChild(host); + assert_equals(input.form, form); + + input.remove(); + assert_equals(input.form, null); + + sr.appendChild(input); + assert_equals(input.form, form); + + form.id = "foobar"; + assert_equals(input.form, null); + + form.id = "form"; + assert_equals(input.form, form); + + form.remove(); + assert_equals(input.form, null); + + sr.appendChild(form); + assert_equals(input.form, form); + + host.remove(); +}, "Shadow form control's form attribute should work also in shadow DOM."); + +test(() => { + var testcontent = document.getElementById("testcontent"); + var host = document.createElement("div"); + var sr = host.attachShadow({mode: "open"}); + sr.innerHTML = "<form id='form'><input id='input'></form>"; + var input = sr.getElementById("input"); + var form = sr.getElementById("form"); + + assert_equals(input.form, form); + + input.remove(); + assert_equals(input.form, null); + + form.appendChild(input); + assert_equals(input.form, form); + + form.remove(); + assert_equals(input.form, form); + + host.remove(); +}, "Form element as form control's ancestor should work also in shadow DOM."); +</script> diff --git a/tests/wpt/web-platform-tests/webstorage/eventTestHarness.js b/tests/wpt/web-platform-tests/webstorage/eventTestHarness.js index 7d9ed01870e..f39dfdaa422 100644 --- a/tests/wpt/web-platform-tests/webstorage/eventTestHarness.js +++ b/tests/wpt/web-platform-tests/webstorage/eventTestHarness.js @@ -5,6 +5,10 @@ iframe.contentWindow.document.body.textContent = "Nothing to see here."; storageEventList = new Array(); iframe.contentWindow.onstorage = function(e) { + if (iframe.contentWindow.sessionStorage === e.storageArea) + e.storageAreaString = "sessionStorage"; + else if (iframe.contentWindow.localStorage === e.storageArea) + e.storageAreaString = "localStorage"; window.parent.storageEventList.push(e); }; diff --git a/tests/wpt/web-platform-tests/webstorage/event_basic.js b/tests/wpt/web-platform-tests/webstorage/event_basic.js index fe8446cec6a..9f0c11b8347 100644 --- a/tests/wpt/web-platform-tests/webstorage/event_basic.js +++ b/tests/wpt/web-platform-tests/webstorage/event_basic.js @@ -20,6 +20,8 @@ testStorages(function(storageString) { assert_unreached(msg); } assert_equals(storageEventList.length, 1); + assert_equals(storageEventList[0].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[0].key, "FOO"); assert_equals(storageEventList[0].oldValue, null); assert_equals(storageEventList[0].newValue, "BAR"); @@ -38,18 +40,26 @@ testStorages(function(storageString) { assert_unreached(msg); } assert_equals(storageEventList.length, 5); + assert_equals(storageEventList[1].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[1].key, "FU"); assert_equals(storageEventList[1].oldValue, null); assert_equals(storageEventList[1].newValue, "BAR"); + assert_equals(storageEventList[2].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[2].key, "a"); assert_equals(storageEventList[2].oldValue, null); assert_equals(storageEventList[2].newValue, "1"); + assert_equals(storageEventList[3].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[3].key, "b"); assert_equals(storageEventList[3].oldValue, null); assert_equals(storageEventList[3].newValue, "2"); + assert_equals(storageEventList[4].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[4].key, "b"); assert_equals(storageEventList[4].oldValue, "2"); assert_equals(storageEventList[4].newValue, "3"); @@ -65,6 +75,8 @@ testStorages(function(storageString) { assert_unreached(msg); } assert_equals(storageEventList.length, 6); + assert_equals(storageEventList[5].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[5].key, "FOO"); assert_equals(storageEventList[5].oldValue, "BAR"); assert_equals(storageEventList[5].newValue, null); @@ -80,6 +92,8 @@ testStorages(function(storageString) { assert_unreached(msg); } assert_equals(storageEventList.length, 7); + assert_equals(storageEventList[6].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[6].key, "FU"); assert_equals(storageEventList[6].oldValue, "BAR"); assert_equals(storageEventList[6].newValue, null); @@ -95,6 +109,8 @@ testStorages(function(storageString) { assert_unreached(msg); } assert_equals(storageEventList.length, 8); + assert_equals(storageEventList[7].storageAreaString, storageString, + "Storage event came from wrong storage type."); assert_equals(storageEventList[7].key, null); assert_equals(storageEventList[7].oldValue, null); assert_equals(storageEventList[7].newValue, null); diff --git a/tests/wpt/web-platform-tests/webusb/idlharness.https.html b/tests/wpt/web-platform-tests/webusb/idlharness.https.html index f69c53c61b6..a2568781a6c 100644 --- a/tests/wpt/web-platform-tests/webusb/idlharness.https.html +++ b/tests/wpt/web-platform-tests/webusb/idlharness.https.html @@ -35,6 +35,7 @@ idl_array.add_untested_idls('dictionary EventInit {};'); idl_array.add_untested_idls('interface EventTarget {};'); idl_array.add_untested_idls('interface Navigator {};'); + idl_array.add_untested_idls('interface WorkerNavigator {};'); let {device} = await getFakeDevice(); diff --git a/tests/wpt/web-platform-tests/webusb/resources/idlharness.dedicatedworker.sharedworker.js b/tests/wpt/web-platform-tests/webusb/resources/idlharness.dedicatedworker.sharedworker.js new file mode 100644 index 00000000000..99eb5a199b6 --- /dev/null +++ b/tests/wpt/web-platform-tests/webusb/resources/idlharness.dedicatedworker.sharedworker.js @@ -0,0 +1,61 @@ +'use strict'; +importScripts('/resources/testharness.js'); +importScripts('/resources/WebIDLParser.js'); +importScripts('/resources/idlharness.js'); +importScripts('/webusb/resources/fake-devices.js'); +importScripts('/webusb/resources/usb-helpers.js'); + +// Object instances used by the IDL test. +var usbDevice; +var usbConfiguration; +var usbInterface; +var usbAlternateInterface; +var usbEndpoint; +var usbConnectionEvent; + +usb_test(async () => { + let webUSBResponse = await fetch('/interfaces/webusb.idl'); + let domResponse = await fetch('/interfaces/dom.idl'); + let webusb_idl_text = await webUSBResponse.text(); + let dom_idl_text = await domResponse.text(); + let idl_array = new IdlArray(); + idl_array.add_idls(webusb_idl_text); + + // Untested IDL interfaces + idl_array.add_untested_idls(dom_idl_text, { only: ['Event', 'EventTarget'] }); + idl_array.add_untested_idls('interface EventHandler {};'); + idl_array.add_untested_idls('dictionary EventInit {};'); + idl_array.add_untested_idls('interface Navigator {};'); + idl_array.add_untested_idls('interface WorkerNavigator {};'); + + let {device} = await getFakeDevice(); + + usbDevice = device; + usbConfiguration = usbDevice.configurations[0]; + usbInterface = usbConfiguration.interfaces[0]; + usbAlternateInterface = usbInterface.alternates[0]; + usbEndpoint = usbAlternateInterface.endpoints[0]; + usbConnectionEvent = + new USBConnectionEvent('connect', { device: usbDevice }) + + idl_array.add_objects({ + WorkerNavigator: ['navigator'], + USB: ['navigator.usb'], + USBAlternateInterface: ['usbAlternateInterface'], + USBConfiguration: ['usbConfiguration'], + USBConnectionEvent: ['usbConnectionEvent'], + USBDevice: ['usbDevice'], + USBEndpoint: ['usbEndpoint'], + USBInterface: ['usbInterface'], + USBInTransferResult: ['new USBInTransferResult("ok")'], + USBOutTransferResult: ['new USBOutTransferResult("ok")'], + USBIsochronousInTransferResult: ['new USBIsochronousInTransferResult([])'], + USBIsochronousOutTransferResult: ['new USBIsochronousOutTransferResult([])'], + USBIsochronousInTransferPacket: ['new USBIsochronousInTransferPacket("ok")'], + USBIsochronousOutTransferPacket: ['new USBIsochronousOutTransferPacket("ok")'], + }); + + idl_array.test(); +}, 'WebUSB on Workers IDL test'); + +done();
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/webusb/worker/idlharness.dedicatedworker.https.html b/tests/wpt/web-platform-tests/webusb/worker/idlharness.dedicatedworker.https.html new file mode 100644 index 00000000000..9ff21839f89 --- /dev/null +++ b/tests/wpt/web-platform-tests/webusb/worker/idlharness.dedicatedworker.https.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<script> +'use strict'; + +fetch_tests_from_worker(new Worker( + '/webusb/resources/idlharness.dedicatedworker.sharedworker.js')); + +</script> diff --git a/tests/wpt/web-platform-tests/webusb/worker/idlharness.sharedworker.https.html b/tests/wpt/web-platform-tests/webusb/worker/idlharness.sharedworker.https.html new file mode 100644 index 00000000000..362e182e1ce --- /dev/null +++ b/tests/wpt/web-platform-tests/webusb/worker/idlharness.sharedworker.https.html @@ -0,0 +1,11 @@ +<!DOCTYPE html> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<script> +'use strict'; + +fetch_tests_from_worker(new SharedWorker( + '/webusb/resources/idlharness.dedicatedworker.sharedworker.js')); + +</script>
\ No newline at end of file diff --git a/tests/wpt/web-platform-tests/x-frame-options/OWNERS b/tests/wpt/web-platform-tests/x-frame-options/OWNERS new file mode 100644 index 00000000000..e9cd7270691 --- /dev/null +++ b/tests/wpt/web-platform-tests/x-frame-options/OWNERS @@ -0,0 +1,2 @@ +@annevk +@mikewest diff --git a/tests/wpt/web-platform-tests/xhr/abort-after-stop.htm b/tests/wpt/web-platform-tests/xhr/abort-after-stop.htm index 24cb5a49a05..7c5060fa4c6 100644 --- a/tests/wpt/web-platform-tests/xhr/abort-after-stop.htm +++ b/tests/wpt/web-platform-tests/xhr/abort-after-stop.htm @@ -10,7 +10,7 @@ <div id="log"></div> <script> var test = async_test(); - test.step(function() { + window.onload = test.step_func(function() { var client = new XMLHttpRequest(); var abortFired = false; client.onabort = test.step_func(function (e) { |