aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/wpt/metadata/MANIFEST.json33
-rw-r--r--tests/wpt/metadata/encoding/single-byte-decoder.html.ini489
-rw-r--r--tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini (renamed from tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini)2
-rw-r--r--tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini10
-rw-r--r--tests/wpt/metadata/html/semantics/forms/the-button-element/button-validation.html.ini3
-rw-r--r--tests/wpt/metadata/quirks/unitless-length/no-quirks.html.ini283
-rw-r--r--tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini1
-rw-r--r--tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini2
-rw-r--r--tests/wpt/mozilla/meta/mozilla/animation-removed-node.html.ini3
-rw-r--r--tests/wpt/web-platform-tests/css/css-align/default-alignment/shorthand-serialization-001.html4
-rw-r--r--tests/wpt/web-platform-tests/css/css-backgrounds/background-gradient-subpixel-fills-area.html44
-rw-r--r--tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-gradient-subpixel-fills-area-ref.html33
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/forms/the-button-element/button-validation.html2
-rw-r--r--tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream-helper.js31
-rw-r--r--tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream.https.html194
15 files changed, 267 insertions, 867 deletions
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 7457d8bccb8..fe431071a49 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -103321,6 +103321,18 @@
{}
]
],
+ "css/css-backgrounds/background-gradient-subpixel-fills-area.html": [
+ [
+ "/css/css-backgrounds/background-gradient-subpixel-fills-area.html",
+ [
+ [
+ "/css/css-backgrounds/reference/background-gradient-subpixel-fills-area-ref.html",
+ "=="
+ ]
+ ],
+ {}
+ ]
+ ],
"css/css-backgrounds/background-image-001.html": [
[
"/css/css-backgrounds/background-image-001.html",
@@ -251183,6 +251195,11 @@
{}
]
],
+ "css/css-backgrounds/reference/background-gradient-subpixel-fills-area-ref.html": [
+ [
+ {}
+ ]
+ ],
"css/css-backgrounds/reference/background-image-001-ref.html": [
[
{}
@@ -536821,7 +536838,7 @@
"testharness"
],
"css/css-align/default-alignment/shorthand-serialization-001.html": [
- "730b2ad867ac5bc285ec8c4f8a6ad0d837390863",
+ "eeff8af4b8179298c671442e62f8cf76fdce4110",
"testharness"
],
"css/css-align/distribution-values/space-evenly-001.html": [
@@ -537836,6 +537853,10 @@
"0256f66bc532c944e5273b485206372d588bd004",
"reftest"
],
+ "css/css-backgrounds/background-gradient-subpixel-fills-area.html": [
+ "bb033d77460581b0356682acf49aae785644c61f",
+ "reftest"
+ ],
"css/css-backgrounds/background-image-001.html": [
"af75ae1772b930ab82047adbd32bbaedaa788a2b",
"reftest"
@@ -540428,6 +540449,10 @@
"18e80a92586f241dbbe9d2a73991d78c98141071",
"support"
],
+ "css/css-backgrounds/reference/background-gradient-subpixel-fills-area-ref.html": [
+ "49fcbb6204f56db84f0ed79c7f5e6d251c56ef7c",
+ "support"
+ ],
"css/css-backgrounds/reference/background-image-001-ref.html": [
"f8b2ad25ccdc743e638d402590141296c142e602",
"support"
@@ -626801,7 +626826,7 @@
"testharness"
],
"html/semantics/forms/the-button-element/button-validation.html": [
- "a153907d77a2c38cc8fbfe39d5c21b065fa96eed",
+ "f3b57fd296a251bc3075215cf93a91942b4d281f",
"testharness"
],
"html/semantics/forms/the-button-element/button-validationmessage.html": [
@@ -678165,11 +678190,11 @@
"support"
],
"webrtc-quic/RTCQuicStream-helper.js": [
- "9563e53d84240ce51e7219b712d6d6fede3cb1ce",
+ "5e1f6030bd8b138fd881264a494d6e35c23c7667",
"support"
],
"webrtc-quic/RTCQuicStream.https.html": [
- "1e242985630fb812db73bfe4b69cc90fc150934f",
+ "b62377f0ced871f8f8d6b51b5715d68abbe0334e",
"testharness"
],
"webrtc-quic/RTCQuicTransport-helper.js": [
diff --git a/tests/wpt/metadata/encoding/single-byte-decoder.html.ini b/tests/wpt/metadata/encoding/single-byte-decoder.html.ini
index bc930eb436f..aafc6cbdcfc 100644
--- a/tests/wpt/metadata/encoding/single-byte-decoder.html.ini
+++ b/tests/wpt/metadata/encoding/single-byte-decoder.html.ini
@@ -2,514 +2,36 @@
type: testharness
[single-byte-decoder.html?document]
- expected: CRASH
- [windows-1254: iso_8859-9 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: iso-8859-8 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: iso_8859-4 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: arabic (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [KOI8-U: koi8-u (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-2: iso8859-2 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-5: iso-8859-5 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: csisolatin1 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-2: latin2 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-874: dos-874 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-874: iso885911 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: iso_8859-6 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1257: windows-1257 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: latin1 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [KOI8-R: koi (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: windows-1252 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-5: csisolatincyrillic (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: iso-ir-148 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [x-mac-cyrillic: x-mac-cyrillic (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: iso-8859-6-e (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1255: cp1255 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: iso-ir-109 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: cp1254 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-13: iso8859-13 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: cp1252 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: l4 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: iso-ir-127 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: latin5 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-14: iso885914 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [IBM866: cp866 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [KOI8-R: koi8 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: csisolatingreek (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: greek8 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: iso88597 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [macintosh: mac (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: csisolatin4 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: iso_8859-7 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1250: windows-1250 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: elot_928 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-874: tis-620 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: iso8859-3 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1250: cp1250 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-874: windows-874 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[ISO-8859-4: iso_8859-4:1988 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [ISO-8859-2: iso-8859-2 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [macintosh: csmacintosh (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-15: iso_8859-15 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: iso-8859-3 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1253: windows-1253 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [KOI8-R: koi8-r (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1251: windows-1251 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: csisolatin5 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: x-cp1254 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: csisolatin3 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-5: iso8859-5 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: l3 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-10: iso885910 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: l5 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: l1 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-5: iso88595 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: ecma-114 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-14: iso8859-14 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: iso-8859-6 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [KOI8-R: koi8_r (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1258: windows-1258 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: x-cp1252 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-13: iso885913 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: iso-ir-138 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: iso-8859-8-e (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [IBM866: ibm866 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-14: iso-8859-14 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: csisolatinhebrew (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: cp819 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-10: latin6 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1253: x-cp1253 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: us-ascii (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[ISO-8859-7: iso_8859-7:1987 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [windows-1252: iso8859-1 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: latin3 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-10: l6 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-2: iso88592 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-10: iso-8859-10 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: windows-1254 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [IBM866: 866 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: iso-8859-7 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: iso8859-8 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-874: iso-8859-11 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: ascii (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: iso_8859-3 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: ibm819 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: iso88591 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1258: cp1258 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: iso8859-7 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: iso-ir-100 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-5: iso_8859-5 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [IBM866: csibm866 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: hebrew (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-5: iso-ir-144 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: iso8859-9 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-15: l9 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[ISO-8859-6: iso_8859-6:1987 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [windows-1255: x-cp1255 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-5: cyrillic (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1256: cp1256 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[ISO-8859-5: iso_8859-5:1988 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [ISO-8859-6: csiso88596i (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: iso8859-6 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: csiso88596e (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1251: x-cp1251 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-2: csisolatin2 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: iso8859-4 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: greek (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: sun_eu_greek (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: latin4 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1255: windows-1255 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[windows-1254: iso_8859-9:1989 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [ISO-8859-6: iso88596 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [macintosh: macintosh (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[windows-1252: iso_8859-1:1987 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [windows-1254: iso-8859-9 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: ecma-118 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-15: iso8859-15 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-2: l2 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-3: iso88593 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1256: x-cp1256 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1251: cp1251 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-15: iso885915 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: iso88594 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-2: iso_8859-2 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[ISO-8859-3: iso_8859-3:1988 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [x-mac-cyrillic: x-mac-ukrainian (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-13: iso-8859-13 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[ISO-8859-2: iso_8859-2:1987 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [windows-874: iso8859-11 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1256: windows-1256 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: csiso88598e (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: asmo-708 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: iso-ir-110 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1254: iso88599 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1257: cp1257 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [macintosh: x-mac-roman (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-15: csisolatin9 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: iso-8859-6-i (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-10: csisolatin6 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8-I: csiso88598i (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-10: iso8859-10 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1250: x-cp1250 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1258: x-cp1258 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: iso_8859-1 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: visual (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1253: cp1253 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[ISO-8859-8: iso_8859-8:1988 (document.characterSet and document.inputEncoding)]
expected: FAIL
- [windows-1252: ansi_x3.4-1968 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-7: iso-ir-126 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [KOI8-R: cskoi8r (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8-I: iso-8859-8-i (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-10: iso-ir-157 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [KOI8-U: koi8-ru (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1257: x-cp1257 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: iso_8859-8 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8-I: logical (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-8: iso88598 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-2: iso-ir-101 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-15: iso-8859-15 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [windows-1252: iso-8859-1 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-16: iso-8859-16 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-4: iso-8859-4 (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
- [ISO-8859-6: csisolatinarabic (document.characterSet and document.inputEncoding)]
- expected: FAIL
-
[single-byte-decoder.html?XMLHttpRequest]
- expected: CRASH
+ expected: TIMEOUT
[ISO-8859-2: iso_8859-2:1987 (XMLHttpRequest)]
expected: FAIL
@@ -624,5 +146,14 @@
[windows-1252: windows-1252 (XMLHttpRequest)]
expected: TIMEOUT
+ [windows-1252: latin1 (XMLHttpRequest)]
+ expected: TIMEOUT
+
+ [windows-1253: cp1253 (XMLHttpRequest)]
+ expected: TIMEOUT
+
+ [windows-1252: us-ascii (XMLHttpRequest)]
+ expected: TIMEOUT
+
[single-byte-decoder.html?TextDecoder]
diff --git a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini
index 385376c7321..dc2e45516de 100644
--- a/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_4.html.ini
+++ b/tests/wpt/metadata/html/browsers/history/the-history-interface/traverse_the_history_5.html.ini
@@ -1,4 +1,4 @@
-[traverse_the_history_4.html]
+[traverse_the_history_5.html]
[Multiple history traversals, last would be aborted]
expected: FAIL
diff --git a/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini
new file mode 100644
index 00000000000..8cc42056d34
--- /dev/null
+++ b/tests/wpt/metadata/html/semantics/embedded-content/the-img-element/non-active-document.html.ini
@@ -0,0 +1,10 @@
+[non-active-document.html]
+ [DOMParser]
+ expected: FAIL
+
+ [createHTMLDocument]
+ expected: FAIL
+
+ [<template>]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/html/semantics/forms/the-button-element/button-validation.html.ini b/tests/wpt/metadata/html/semantics/forms/the-button-element/button-validation.html.ini
index 821e16ef0f3..ff05de85f9d 100644
--- a/tests/wpt/metadata/html/semantics/forms/the-button-element/button-validation.html.ini
+++ b/tests/wpt/metadata/html/semantics/forms/the-button-element/button-validation.html.ini
@@ -18,3 +18,6 @@
[invalid type attribute]
expected: FAIL
+ [historical menu type attribute]
+ expected: FAIL
+
diff --git a/tests/wpt/metadata/quirks/unitless-length/no-quirks.html.ini b/tests/wpt/metadata/quirks/unitless-length/no-quirks.html.ini
deleted file mode 100644
index 818a429ed39..00000000000
--- a/tests/wpt/metadata/quirks/unitless-length/no-quirks.html.ini
+++ /dev/null
@@ -1,283 +0,0 @@
-[no-quirks.html]
- [top: -\\31 .5]
- expected: FAIL
-
- [bottom: -1A]
- expected: FAIL
-
- [bottom: -1a]
- expected: FAIL
-
- [top: @1]
- expected: FAIL
-
- [top: "1a"]
- expected: FAIL
-
- [top: @a]
- expected: FAIL
-
- [bottom: "1"]
- expected: FAIL
-
- [bottom: -/**/1]
- expected: FAIL
-
- [top: +/**/1]
- expected: FAIL
-
- [bottom: @1a]
- expected: FAIL
-
- [top: 1\\31 ]
- expected: FAIL
-
- [top: url('1')]
- expected: FAIL
-
- [bottom: -\\31 ]
- expected: FAIL
-
- [top: calc(1)]
- expected: FAIL
-
- [top: \\31 ]
- expected: FAIL
-
- [bottom: +1\\31 ]
- expected: FAIL
-
- [bottom: 1\\31 .5]
- expected: FAIL
-
- [bottom: #0001]
- expected: FAIL
-
- [top: calc(2 * 2px)]
- expected: FAIL
-
- [bottom: 1a]
- expected: FAIL
-
- [bottom: A]
- expected: FAIL
-
- [bottom: #01]
- expected: FAIL
-
- [top: +\\31 .5]
- expected: FAIL
-
- [bottom: #1]
- expected: FAIL
-
- [top: -/**/1]
- expected: FAIL
-
- [bottom: +\\31 .5]
- expected: FAIL
-
- [bottom: \\31 ]
- expected: FAIL
-
- [bottom: calc(1)]
- expected: FAIL
-
- [top: #001]
- expected: FAIL
-
- [top: +\\31 ]
- expected: FAIL
-
- [bottom: +\\31 ]
- expected: FAIL
-
- [top: +1.5]
- expected: FAIL
-
- [top: +1\\31 ]
- expected: FAIL
-
- [bottom: @a]
- expected: FAIL
-
- [bottom: @1]
- expected: FAIL
-
- [top: #1]
- expected: FAIL
-
- [top: 1a]
- expected: FAIL
-
- [bottom: +1a]
- expected: FAIL
-
- [bottom: +1A]
- expected: FAIL
-
- [bottom: "a"]
- expected: FAIL
-
- [top: #00001]
- expected: FAIL
-
- [bottom: -1\\31 .5]
- expected: FAIL
-
- [top: "1"]
- expected: FAIL
-
- [bottom: 1.5]
- expected: FAIL
-
- [bottom: -\\31 .5]
- expected: FAIL
-
- [bottom: url('1')]
- expected: FAIL
-
- [bottom: -1.5]
- expected: FAIL
-
- [top: \\31 .5]
- expected: FAIL
-
- [bottom: "1a"]
- expected: FAIL
-
- [bottom: calc(2 * 2px)]
- expected: FAIL
-
- [bottom: +1\\31 .5]
- expected: FAIL
-
- [bottom: 1\\31 ]
- expected: FAIL
-
- [bottom: +/**/1]
- expected: FAIL
-
- [bottom: #00001]
- expected: FAIL
-
- [top: url(1)]
- expected: FAIL
-
- [bottom: #001]
- expected: FAIL
-
- [top: +1\\31 .5]
- expected: FAIL
-
- [top: -1a]
- expected: FAIL
-
- [top: -1A]
- expected: FAIL
-
- [bottom: url(1)]
- expected: FAIL
-
- [top: a]
- expected: FAIL
-
- [top: A]
- expected: FAIL
-
- [top: #000001]
- expected: FAIL
-
- [top: 1]
- expected: FAIL
-
- [top: 1\\31 .5]
- expected: FAIL
-
- [bottom: a]
- expected: FAIL
-
- [bottom: 1]
- expected: FAIL
-
- [bottom: +1]
- expected: FAIL
-
- [bottom: #000001]
- expected: FAIL
-
- [bottom: +a]
- expected: FAIL
-
- [bottom: +A]
- expected: FAIL
-
- [top: 1.5]
- expected: FAIL
-
- [top: +A]
- expected: FAIL
-
- [top: +a]
- expected: FAIL
-
- [top: +1]
- expected: FAIL
-
- [top: -1.5]
- expected: FAIL
-
- [top: -1\\31 .5]
- expected: FAIL
-
- [top: +1a]
- expected: FAIL
-
- [top: +1A]
- expected: FAIL
-
- [top: @1a]
- expected: FAIL
-
- [bottom: \\31 .5]
- expected: FAIL
-
- [top: "a"]
- expected: FAIL
-
- [top: #01]
- expected: FAIL
-
- [bottom: +1.5]
- expected: FAIL
-
- [bottom: -A]
- expected: FAIL
-
- [bottom: -a]
- expected: FAIL
-
- [bottom: -1\\31 ]
- expected: FAIL
-
- [top: #0001]
- expected: FAIL
-
- [bottom: -1]
- expected: FAIL
-
- [top: -\\31 ]
- expected: FAIL
-
- [top: -A]
- expected: FAIL
-
- [top: -a]
- expected: FAIL
-
- [top: -1]
- expected: FAIL
-
- [top: -1\\31 ]
- expected: FAIL
-
diff --git a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
index 66bd350083b..a56bad443a2 100644
--- a/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
+++ b/tests/wpt/metadata/webaudio/the-audio-api/the-analysernode-interface/realtimeanalyser-fft-scaling.html.ini
@@ -1,4 +1,5 @@
[realtimeanalyser-fft-scaling.html]
+ expected: TIMEOUT
[X 2048-point FFT peak position is not equal to 64. Got 0.]
expected: FAIL
diff --git a/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini b/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini
deleted file mode 100644
index dbea4f293ad..00000000000
--- a/tests/wpt/mozilla/meta/css/transition_calc_implicit.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[transition_calc_implicit.html]
- expected: TIMEOUT
diff --git a/tests/wpt/mozilla/meta/mozilla/animation-removed-node.html.ini b/tests/wpt/mozilla/meta/mozilla/animation-removed-node.html.ini
index e3e6c6a9470..b320af24162 100644
--- a/tests/wpt/mozilla/meta/mozilla/animation-removed-node.html.ini
+++ b/tests/wpt/mozilla/meta/mozilla/animation-removed-node.html.ini
@@ -1,2 +1,5 @@
[animation-removed-node.html]
prefs: [css.animations.testing.enabled:true]
+ [animation-removed-node]
+ expected: FAIL
+
diff --git a/tests/wpt/web-platform-tests/css/css-align/default-alignment/shorthand-serialization-001.html b/tests/wpt/web-platform-tests/css/css-align/default-alignment/shorthand-serialization-001.html
index 730b2ad867a..eeff8af4b81 100644
--- a/tests/wpt/web-platform-tests/css/css-align/default-alignment/shorthand-serialization-001.html
+++ b/tests/wpt/web-platform-tests/css/css-align/default-alignment/shorthand-serialization-001.html
@@ -36,7 +36,7 @@ var place_content_test_cases = [
},
{
justifyContent: "unsafe start",
- shorthand: ["normal start", "normal unsafe start"],
+ shorthand: ["normal unsafe start"],
},
{
justifyContent: "space-evenly start",
@@ -64,7 +64,7 @@ var place_items_test_cases = [
},
{
justifyItems: "unsafe start",
- shorthand: ["normal start", "normal unsafe start"],
+ shorthand: ["normal unsafe start"],
},
{
justifyItems: "stretch",
diff --git a/tests/wpt/web-platform-tests/css/css-backgrounds/background-gradient-subpixel-fills-area.html b/tests/wpt/web-platform-tests/css/css-backgrounds/background-gradient-subpixel-fills-area.html
new file mode 100644
index 00000000000..bb033d77460
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-backgrounds/background-gradient-subpixel-fills-area.html
@@ -0,0 +1,44 @@
+<!DOCTYPE html>
+<html lang="en-GB" xml:lang="en-GB" xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>CSS Background Test: Gradient backgrounds should fill the positioning area</title>
+ <link rel="author" title="schenney" href="mailto:schenney@chromium.org">
+ <link rel="help" href="http://www.w3.org/TR/css3-background">
+ <link rel="match" href="reference/background-gradient-subpixel-fills-area-ref.html">
+ <style>
+ ul {
+ width: 396.875px;
+ overflow: auto;
+ padding: 0;
+ list-style: none;
+ background-color: red;
+ }
+
+ li {
+ float: left;
+ }
+
+ div {
+ display: block;
+ width: 19.6875px;
+ height: 17px;
+ padding: 20px 10px;
+ background: linear-gradient(to bottom, green 0%, darkgreen 100%) darkgreen;
+ }
+ </style>
+</head>
+<body>
+ <ul>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ <li><div></div></li>
+ </ul>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-gradient-subpixel-fills-area-ref.html b/tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-gradient-subpixel-fills-area-ref.html
new file mode 100644
index 00000000000..49fcbb6204f
--- /dev/null
+++ b/tests/wpt/web-platform-tests/css/css-backgrounds/reference/background-gradient-subpixel-fills-area-ref.html
@@ -0,0 +1,33 @@
+<!DOCTYPE html>
+<html lang="en-GB" xml:lang="en-GB" xmlns="http://www.w3.org/1999/xhtml">
+<head>
+ <title>CSS Background Test Reference</title>
+ <link rel="author" title="schenney" href="mailto:schenney@chromium.org">
+ <style>
+ ul {
+ width: 396.875px;
+ overflow: auto;
+ padding: 0;
+ list-style: none;
+ background-color: red;
+ }
+
+ li {
+ float: left;
+ }
+
+ div {
+ display: block;
+ width: 376.875px;
+ height: 17px;
+ padding: 20px 10px;
+ background: linear-gradient(to bottom, green 0%, darkgreen 100%) darkgreen;
+ }
+ </style>
+</head>
+<body>
+ <ul>
+ <li><div></div></li>
+ </ul>
+</body>
+</html>
diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/the-button-element/button-validation.html b/tests/wpt/web-platform-tests/html/semantics/forms/the-button-element/button-validation.html
index a153907d77a..f3b57fd296a 100644
--- a/tests/wpt/web-platform-tests/html/semantics/forms/the-button-element/button-validation.html
+++ b/tests/wpt/web-platform-tests/html/semantics/forms/the-button-element/button-validation.html
@@ -24,6 +24,6 @@
willValid(document.getElementById('btn2'), "submit", true, "submit type attribute");
willValid(document.getElementById('btn3'), "reset", false, "reset type attribute");
willValid(document.getElementById('btn4'), "button", false, "button type attribute");
- willValid(document.getElementById('btn5'), "menu", false, "menu type attribute");
+ willValid(document.getElementById('btn5'), "submit", true, "historical menu type attribute");
willValid(document.getElementById('btn6'), "submit", true, "invalid type attribute");
</script>
diff --git a/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream-helper.js b/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream-helper.js
index 9563e53d842..5e1f6030bd8 100644
--- a/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream-helper.js
+++ b/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream-helper.js
@@ -23,7 +23,7 @@ function closed_stream_test(test_func, description) {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(1));
+ localStream.write({ data: new Uint8Array(1) });
const remoteWatcher =
new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
@@ -39,38 +39,37 @@ function closed_stream_test(test_func, description) {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
const remoteWatcher =
new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
- remoteStream.finish();
+ remoteStream.write({ finish: true });
await localStream.waitForReadable(localStream.maxReadBufferedAmount);
assert_object_equals(
localStream.readInto(new Uint8Array(10)),
{ amount: 0, finished: true });
assert_equals(localStream.state, 'closed');
return test_func(t, localStream);
- }, 'Stream closed by finish(), followed by reading remote finish: ' +
+ }, 'Stream closed by writing a finish, followed by reading remote finish: ' +
description);
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(1));
+ localStream.write({ finish: true });
const remoteWatcher =
new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
- remoteStream.finish();
- await localStream.waitForReadable(localStream.maxReadBufferedAmount);
+ await remoteStream.waitForReadable(10);
assert_object_equals(
- localStream.readInto(new Uint8Array(10)),
+ remoteStream.readInto(new Uint8Array(10)),
{ amount: 0, finished: true });
- localStream.finish();
- assert_equals(localStream.state, 'closed');
- return test_func(t, localStream);
- }, 'Stream closed by by reading remote finish, followed by finish(): ' +
- description);
+ remoteStream.write({ finish: true });
+ assert_equals(remoteStream.state, 'closed');
+ return test_func(t, remoteStream);
+ }, 'Stream closed by by reading remote finish, followed by writing a ' +
+ 'finish: ' + description);
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
@@ -85,15 +84,15 @@ function closed_stream_test(test_func, description) {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(1));
+ localStream.write({ data: new Uint8Array(1) });
const remoteWatcher =
new EventWatcher(t, remoteQuicTransport,
[ 'quicstream', 'statechange' ]);
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
localQuicTransport.stop();
await remoteWatcher.wait_for('statechange');
- assert_equals(localStream.state, 'closed');
- return test_func(t, localStream);
+ assert_equals(remoteStream.state, 'closed');
+ return test_func(t, remoteStream);
}, 'Stream closed by remote RTCQuicTransport stop(): ' + description);
}
diff --git a/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream.https.html b/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream.https.html
index 1e242985630..b62377f0ced 100644
--- a/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream.https.html
+++ b/tests/wpt/web-platform-tests/webrtc-quic/RTCQuicStream.https.html
@@ -55,8 +55,8 @@ promise_test(async t => {
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
- localQuicTransport.createStream().finish();
- localQuicTransport.createStream().finish();
+ localQuicTransport.createStream().write({ data: new Uint8Array([42]) });
+ localQuicTransport.createStream().write({ data: new Uint8Array([42]) });
const remoteWatcher =
new EventWatcher(t, remoteQuicTransport, [ 'quicstream', 'statechange' ]);
const { stream: firstRemoteStream } =
@@ -73,18 +73,28 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
assert_equals(localStream.state, 'closing');
-}, `finish() changes state to 'closing'.`);
+}, `write() with a finish changes state to 'closing'.`);
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
- localStream.finish();
+ localStream.write({ data: new Uint8Array(), finish: true });
assert_equals(localStream.state, 'closing');
-}, `finish() twice does not change state.`);
+}, 'write() with a finish and an empty array changes state ' +
+ `to 'closing'.`);
+
+promise_test(async t => {
+ const [ localQuicTransport, remoteQuicTransport ] =
+ await makeTwoConnectedQuicTransports(t);
+ const localStream = localQuicTransport.createStream();
+ localStream.write({ finish: true });
+ assert_throws('InvalidStateError', () => {
+ localStream.write({ finish: true });
+ });
+}, `write() with finish twice throws InvalidStateError.`);
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
@@ -98,10 +108,10 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
localStream.reset();
assert_equals(localStream.state, 'closed');
-}, `reset() following finish() changes state to 'closed'.`);
+}, `reset() following write with finish changes state to 'closed'.`);
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
@@ -121,7 +131,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
assert_equals(remoteStream.state, 'open');
@@ -131,13 +141,13 @@ promise_test(async t => {
remoteStream.readInto(new Uint8Array(10)),
{ amount: 0, finished: true } );
assert_equals(remoteStream.state, 'closing');
-}, 'waitForReadable() resolves with remote finish');
+}, 'waitForReadable() promise resolves with remote finish');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(remoteStream.maxReadBufferedAmount);
@@ -145,33 +155,33 @@ promise_test(async t => {
remoteStream.readInto(new Uint8Array(10)),
{ amount: 0, finished: true } );
assert_equals(remoteStream.state, 'closing');
- remoteStream.finish()
+ remoteStream.write({ finish: true });
assert_equals(remoteStream.state, 'closed');
-}, 'finish() on a stream that has already read out finish changes ' +
- `state to 'closed'.`);
+}, 'write() with a finish on a stream that has already read out finish ' +
+ `changes state to 'closed'.`);
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
- remoteStream.finish();
+ remoteStream.write({ finish: true });
assert_equals(localStream.state, 'closing');
await localStream.waitForReadable(localStream.maxReadBufferedAmount);
assert_object_equals(
localStream.readInto(new Uint8Array(10)),
{ amount: 0, finished: true } );
assert_equals(localStream.state, 'closed');
-}, 'Reading out finish on stream that has already called finish() ' +
- `state to 'closed'.`);
+}, 'Reading out finish on stream that has already called write() with a ' +
+ `finish state to 'closed'.`);
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(remoteStream.maxReadBufferedAmount);
@@ -190,27 +200,46 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(0));
- assert_equals(localStream.writeBufferedAmount, 0);
-}, 'write() with an empty array does nothing.');
+ assert_throws('NotSupportedError', () =>
+ localStream.write({ data: new Uint8Array() }));
+}, 'write() without finish and an empty array throws NotSupportedError.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array([65]));
+ assert_throws('NotSupportedError', () =>
+ localStream.write({}));
+}, 'write() without finish and no data throws NotSupportedError.');
+
+promise_test(async t => {
+ const [ localQuicTransport, remoteQuicTransport ] =
+ await makeTwoConnectedQuicTransports(t);
+ const localStream = localQuicTransport.createStream();
+ localStream.write({ data: new Uint8Array([65]) });
assert_equals(localStream.writeBufferedAmount, 1);
- localStream.write(new Uint8Array([66, 67]));
+ localStream.write({ data: new Uint8Array([66, 67]) });
assert_equals(localStream.writeBufferedAmount, 3);
- localStream.write(new Uint8Array([68, 69, 70]));
+ localStream.write({ data: new Uint8Array([68, 69, 70]) });
assert_equals(localStream.writeBufferedAmount, 6);
}, 'write() adds to writeBufferedAmount each call.');
+
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(localStream.maxWriteBufferedAmount));
+ localStream.write({ data: new Uint8Array([42, 43]), finish: true });
+ assert_equals(localStream.writeBufferedAmount, 2);
+}, `write() data with a finish adds to writeBufferedAmount.`);
+
+promise_test(async t => {
+ const [ localQuicTransport, remoteQuicTransport ] =
+ await makeTwoConnectedQuicTransports(t);
+ const localStream = localQuicTransport.createStream();
+ localStream.write({
+ data: new Uint8Array(localStream.maxWriteBufferedAmount)
+ });
assert_equals(localStream.writeBufferedAmount,
localStream.maxWriteBufferedAmount);
}, 'write() can write exactly maxWriteBufferedAmount.');
@@ -219,10 +248,9 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- assert_throws('OperationError',
- () =>
- localStream.write(
- new Uint8Array(localStream.maxWriteBufferedAmount + 1)));
+ assert_throws('OperationError', () => localStream.write({
+ data: new Uint8Array(localStream.maxWriteBufferedAmount + 1)
+ }));
assert_equals(localStream.writeBufferedAmount, 0);
}, 'write() throws if data longer than maxWriteBufferedAmount.');
@@ -230,11 +258,11 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(10));
- assert_throws('OperationError',
- () =>
- localStream.write(
- new Uint8Array(localStream.maxWriteBufferedAmount)));
+ localStream.write(
+ { data: new Uint8Array(10)});
+ assert_throws('OperationError', () => localStream.write({
+ data: new Uint8Array(localStream.maxWriteBufferedAmount)
+ }));
assert_equals(localStream.writeBufferedAmount, 10);
}, 'write() throws if total write buffered amount would be greater than ' +
'maxWriteBufferedAmount.');
@@ -243,7 +271,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(10));
+ localStream.write({ data: new Uint8Array(10) });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
await remoteWatcher.wait_for('quicstream');
}, 'write() causes quicstream event to fire on the remote transport.');
@@ -252,29 +280,31 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });;
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
await remoteWatcher.wait_for('quicstream');
-}, 'finish() causes quicstream event to fire on the remote transport.');
+}, 'write() with a finish causes quicstream event to fire on the ' +
+ 'remote transport.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
assert_throws('InvalidStateError',
- () => localStream.write(new Uint8Array()));
-}, 'write() throws InvalidStateError if finish() has been called.');
+ () => localStream.write({ data: new Uint8Array([65]) }));
+}, 'write() throws InvalidStateError if write() with finish has been called.');
closed_stream_test(async (t, stream) => {
- assert_throws('InvalidStateError', () => stream.write(new Uint8Array()));
+ assert_throws('InvalidStateError',
+ () => stream.write({ data: new Uint8Array([65]) }));
}, 'write() throws InvalidStateError.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(generateData(10));
+ localStream.write({ data: generateData(10) });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream : remoteStream} = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(10);
@@ -287,7 +317,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(generateData(10));
+ localStream.write({ data: generateData(10) });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream : remoteStream} = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(10);
@@ -304,7 +334,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(10));
+ localStream.write({ data: new Uint8Array(10) });
localStream.reset();
assert_equals(localStream.writeBufferedAmount, 0);
}, 'writeBufferedAmount set to 0 after local reset().');
@@ -313,27 +343,26 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(1));
+ localStream.write({ finish: true });
const remoteWatcher =
new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
- remoteStream.finish();
- await localStream.waitForReadable(localStream.maxReadBufferedAmount);
+ await remoteStream.waitForReadable(10);
assert_object_equals(
- localStream.readInto(new Uint8Array(10)),
+ remoteStream.readInto(new Uint8Array(10)),
{ amount: 0, finished: true });
- localStream.write(new Uint8Array(10));
- assert_equals(localStream.writeBufferedAmount, 10);
- localStream.finish();
- assert_equals(localStream.writeBufferedAmount, 0);
+ remoteStream.write({ data: new Uint8Array(10) });
+ assert_equals(remoteStream.writeBufferedAmount, 10);
+ remoteStream.write({ finish: true });
+ assert_equals(remoteStream.writeBufferedAmount, 0);
}, 'writeBufferedAmount set to 0 after reading remote finish, followed ' +
- 'by finish().');
+ 'by write() with finish.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(10));
+ localStream.write({ data: new Uint8Array(10) });
localQuicTransport.stop();
assert_equals(localStream.writeBufferedAmount, 0);
}, 'writeBufferedAmount set to 0 after local RTCQuicTransport stop().');
@@ -342,10 +371,10 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(10));
- localStream.finish();
+ localStream.write({ data: new Uint8Array(10) });
+ localStream.write({ finish: true });
assert_equals(localStream.writeBufferedAmount, 10);
-}, 'writeBufferedAmount maintained after finish() has been called.');
+}, 'writeBufferedAmount maintained after write() with finish has been called.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
@@ -367,35 +396,41 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(localStream.maxWriteBufferedAmount));
+ localStream.write({
+ data: new Uint8Array(localStream.maxWriteBufferedAmount)
+ });
const promise1 = localStream.waitForWriteBufferedAmountBelow(0);
const promise2 = localStream.waitForWriteBufferedAmountBelow(0);
- localStream.finish();
+ localStream.write({ finish: true });
await Promise.all([
promise_rejects(t, 'InvalidStateError', promise1),
promise_rejects(t, 'InvalidStateError', promise2)]);
}, 'Pending waitForWriteBufferedAmountBelow() promises rejected after ' +
- 'finish().');
+ 'write() with finish.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(localStream.maxWriteBufferedAmount));
- localStream.finish();
+ localStream.write({
+ data: new Uint8Array(localStream.maxWriteBufferedAmount)
+ });
+ localStream.write({ finish: true });
const promise1 = localStream.waitForWriteBufferedAmountBelow(0);
const promise2 = localStream.waitForWriteBufferedAmountBelow(0);
await Promise.all([
promise_rejects(t, 'InvalidStateError', promise1),
promise_rejects(t, 'InvalidStateError', promise2)]);
}, 'waitForWriteBufferedAmountBelow() promises immediately rejected after ' +
- 'finish().');
+ 'wrote finish.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(localStream.maxWriteBufferedAmount));
+ localStream.write({
+ data: new Uint8Array(localStream.maxWriteBufferedAmount)
+ });
const promise1 = localStream.waitForWriteBufferedAmountBelow(0);
const promise2 = localStream.waitForWriteBufferedAmountBelow(0);
localStream.reset();
@@ -409,7 +444,9 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(localStream.maxWriteBufferedAmount));
+ localStream.write({
+ data: new Uint8Array(localStream.maxWriteBufferedAmount)
+ });
const promise1 = localStream.waitForWriteBufferedAmountBelow(0);
const promise2 = localStream.waitForWriteBufferedAmountBelow(0);
localQuicTransport.stop();
@@ -441,7 +478,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array([ 65 ]));
+ localStream.write({ data: new Uint8Array([ 65 ]) });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(1);
@@ -470,7 +507,7 @@ async function writeGeneratedData(stream, amount) {
while (amount > 0) {
const chunkSize = Math.min(stream.maxWriteBufferedAmount, amount);
await stream.waitForWriteBufferedAmountBelow(0);
- stream.write(data.subarray(0, chunkSize));
+ stream.write({ data: data.subarray(0, chunkSize) });
amount -= chunkSize;
}
}
@@ -480,8 +517,7 @@ promise_test(async t => {
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
const data = generateData(10);
- localStream.write(data);
- localStream.finish();
+ localStream.write({ data: data, finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(data.length + 1);
@@ -519,22 +555,22 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(remoteStream.maxReadBufferedAmount);
assert_object_equals(
remoteStream.readInto(new Uint8Array(10)),
{ amount: 0, finished: true } );
-}, 'waitForReadable() resolves with finish().');
+}, 'waitForReadable() resolves with write() with finish.');
promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
const writeData = generateData(10);
- localStream.write(writeData);
- localStream.finish();
+ localStream.write({ data: writeData });
+ localStream.write({ finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(11);
@@ -558,7 +594,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.finish();
+ localStream.write({ finish: true });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream: remoteStream } = await remoteWatcher.wait_for('quicstream');
await remoteStream.waitForReadable(remoteStream.maxReadBufferedAmount);
@@ -582,7 +618,7 @@ promise_test(async t => {
const promise2 = localStream.waitForReadable(10);
localStream.reset();
await Promise.all([
- promise_rejects(t, 'InvalidStateError', promise1),
+promise_rejects(t, 'InvalidStateError', promise1),
promise_rejects(t, 'InvalidStateError', promise2)]);
}, 'Pending waitForReadable() promises rejected after reset().');
@@ -590,7 +626,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(1));
+ localStream.write({ data: new Uint8Array(1) });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream : remoteStream} = await remoteWatcher.wait_for('quicstream');
const promise1 = remoteStream.waitForReadable(10);
@@ -618,7 +654,7 @@ promise_test(async t => {
const [ localQuicTransport, remoteQuicTransport ] =
await makeTwoConnectedQuicTransports(t);
const localStream = localQuicTransport.createStream();
- localStream.write(new Uint8Array(1));
+ localStream.write({ data: new Uint8Array(1) });
const remoteWatcher = new EventWatcher(t, remoteQuicTransport, 'quicstream');
const { stream : remoteStream} = await remoteWatcher.wait_for('quicstream');
const promise1 = remoteStream.waitForReadable(10);