mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Use spec compliant content-type extraction in more places and enable a <stylesheet>
quirk (#28321)
This changes includes two semi-related things: 1. Fixes some specification compliance issues when parsing mime types and charsets for `XMLHttpRequest`. 2. Implements a `<stylesheet>` parsing quirk involving mime types. Testing: There are tests for these changes. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
parent
d8837e4a52
commit
6e97fc0bc4
17 changed files with 231 additions and 1148 deletions
|
@ -1,49 +1,10 @@
|
|||
[response.window.html]
|
||||
[fetch(): combined response Content-Type: text/plain ]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): separate response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): separate response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): separate response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain;charset=gbk text/html;charset=windows-1254]
|
||||
expected: FAIL
|
||||
|
||||
[Request: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain;charset=gbk;x=foo text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/html;charset=gbk text/plain text/html]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/html text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/html */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain;charset=gbk text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain;charset=gbk text/html;charset=windows-1254]
|
||||
expected: FAIL
|
||||
|
||||
|
@ -53,110 +14,38 @@
|
|||
[<iframe>: separate response Content-Type: text/plain;charset=gbk text/html;charset=windows-1254]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain;charset=gbk text/html]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): separate response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain;charset=gbk text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[Request: combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain;charset=gbk text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain;charset=gbk text/plain;charset=windows-1252]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/html */*]
|
||||
expected: FAIL
|
||||
|
||||
[Request: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[Response: combined response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" " text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||
expected: FAIL
|
||||
|
||||
[Response: combined response Content-Type: text/html;x=" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html;charset=gbk text/html;x=",text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain ]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/html text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;" " text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[Response: combined response Content-Type: text/html;" \\" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain;charset=gbk;x=foo text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain;charset=gbk;x=foo text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain */*]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;charset=gbk text/html;x=",text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain */*;charset=gbk]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/plain;charset=gbk text/plain;charset=windows-1252]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: combined response Content-Type: text/plain */*]
|
||||
expected: FAIL
|
||||
|
||||
[Request: combined response Content-Type: text/html;" text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/html;" " text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain;charset=gbk text/plain;charset=windows-1252]
|
||||
expected: FAIL
|
||||
|
||||
[fetch(): combined response Content-Type: text/html;charset=gbk text/html;x=",text/plain]
|
||||
expected: FAIL
|
||||
|
||||
[Response: combined response Content-Type: text/html;" \\" text/plain ";charset=GBK]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/plain;charset=gbk text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: text/html;charset=gbk text/plain text/html]
|
||||
expected: FAIL
|
||||
|
||||
[<iframe>: separate response Content-Type: */* text/html]
|
||||
expected: FAIL
|
||||
|
|
|
@ -1,57 +0,0 @@
|
|||
[script.window.html]
|
||||
[separate text/javascript;charset=windows-1252 x/x text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript;" x/x]
|
||||
expected: FAIL
|
||||
|
||||
[combined x/x;charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript;charset=windows-1252;" \\" x/x]
|
||||
expected: FAIL
|
||||
|
||||
[separate x/x text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[combined x/x;" x/y;\\" text/javascript;charset=windows-1252;" text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[combined x/x text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;charset=windows-1252;" \\" x/x]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript error]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript;charset=windows-1252 error text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript;charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate x/x;charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript;charset=windows-1252 x/x text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate x/x;" x/y;\\" text/javascript;charset=windows-1252;" text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;";charset=windows-1252]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript; charset=windows-1252 text/javascript]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript;" x/x]
|
||||
expected: FAIL
|
||||
|
||||
[combined text/javascript ]
|
||||
expected: FAIL
|
||||
|
||||
[separate text/javascript x/x]
|
||||
expected: FAIL
|
3
tests/wpt/meta/fetch/nosniff/script.html.ini
vendored
3
tests/wpt/meta/fetch/nosniff/script.html.ini
vendored
|
@ -1,3 +0,0 @@
|
|||
[script.html]
|
||||
[URL query: text/ecmascript;blah]
|
||||
expected: FAIL
|
|
@ -10,9 +10,3 @@
|
|||
|
||||
[Revalidated URL query: text/json]
|
||||
expected: FAIL
|
||||
|
||||
[URL query: text/css;blah]
|
||||
expected: FAIL
|
||||
|
||||
[Revalidated URL query: text/css;blah]
|
||||
expected: FAIL
|
||||
|
|
3
tests/wpt/meta/fetch/nosniff/worker.html.ini
vendored
3
tests/wpt/meta/fetch/nosniff/worker.html.ini
vendored
|
@ -1,3 +0,0 @@
|
|||
[worker.html]
|
||||
[URL query: ?type=text/ecmascript;yay]
|
||||
expected: FAIL
|
Loading…
Add table
Add a link
Reference in a new issue