mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Auto merge of #22479 - servo-wpt-sync:wpt_update_16-12-2018, r=jdm
Sync WPT with upstream (16-12-2018) Automated downstream sync of changes from upstream as of 16-12-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/22479) <!-- Reviewable:end -->
This commit is contained in:
commit
9ca6768a56
15 changed files with 267 additions and 867 deletions
|
@ -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": [
|
||||
|
|
|
@ -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]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
[traverse_the_history_4.html]
|
||||
[traverse_the_history_5.html]
|
||||
[Multiple history traversals, last would be aborted]
|
||||
expected: FAIL
|
||||
|
|
@ -0,0 +1,10 @@
|
|||
[non-active-document.html]
|
||||
[DOMParser]
|
||||
expected: FAIL
|
||||
|
||||
[createHTMLDocument]
|
||||
expected: FAIL
|
||||
|
||||
[<template>]
|
||||
expected: FAIL
|
||||
|
|
@ -18,3 +18,6 @@
|
|||
[invalid type attribute]
|
||||
expected: FAIL
|
||||
|
||||
[historical menu type attribute]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
||||
|
|
|
@ -1,2 +0,0 @@
|
|||
[transition_calc_implicit.html]
|
||||
expected: TIMEOUT
|
|
@ -1,2 +1,5 @@
|
|||
[animation-removed-node.html]
|
||||
prefs: [css.animations.testing.enabled:true]
|
||||
[animation-removed-node]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -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",
|
||||
|
|
|
@ -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>
|
|
@ -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>
|
|
@ -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>
|
||||
|
|
|
@ -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);
|
||||
}
|
||||
|
||||
|
|
|
@ -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);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue