Title: [264380] trunk/LayoutTests/imported/w3c
Revision
264380
Author
cdu...@apple.com
Date
2020-07-14 16:01:51 -0700 (Tue, 14 Jul 2020)

Log Message

Resync web-platform-tests/mimesniff from upstream
https://bugs.webkit.org/show_bug.cgi?id=214317

Reviewed by Alex Christensen.

Resync web-platform-tests/mimesniff from upstream b2a666d93581a71e9338b2.

* web-platform-tests/mimesniff/mime-types/README.md:
* web-platform-tests/mimesniff/mime-types/charset-parameter.window-expected.txt:
* web-platform-tests/mimesniff/mime-types/charset-parameter.window.js:
(isByteCompatible):
* web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt:
* web-platform-tests/mimesniff/mime-types/parsing.any.js:
(isByteCompatible):
(runTests):
* web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt:
* web-platform-tests/mimesniff/mime-types/resources/mime-charset.py:
(main):
* web-platform-tests/mimesniff/mime-types/resources/mime-groups.json: Added.
* web-platform-tests/mimesniff/mime-types/resources/mime-types.json:
* web-platform-tests/mimesniff/mime-types/resources/w3c-import.log:

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/imported/w3c/ChangeLog (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/ChangeLog	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/ChangeLog	2020-07-14 23:01:51 UTC (rev 264380)
@@ -1,5 +1,29 @@
 2020-07-14  Chris Dumez  <cdu...@apple.com>
 
+        Resync web-platform-tests/mimesniff from upstream
+        https://bugs.webkit.org/show_bug.cgi?id=214317
+
+        Reviewed by Alex Christensen.
+
+        Resync web-platform-tests/mimesniff from upstream b2a666d93581a71e9338b2.
+
+        * web-platform-tests/mimesniff/mime-types/README.md:
+        * web-platform-tests/mimesniff/mime-types/charset-parameter.window-expected.txt:
+        * web-platform-tests/mimesniff/mime-types/charset-parameter.window.js:
+        (isByteCompatible):
+        * web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt:
+        * web-platform-tests/mimesniff/mime-types/parsing.any.js:
+        (isByteCompatible):
+        (runTests):
+        * web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt:
+        * web-platform-tests/mimesniff/mime-types/resources/mime-charset.py:
+        (main):
+        * web-platform-tests/mimesniff/mime-types/resources/mime-groups.json: Added.
+        * web-platform-tests/mimesniff/mime-types/resources/mime-types.json:
+        * web-platform-tests/mimesniff/mime-types/resources/w3c-import.log:
+
+2020-07-14  Chris Dumez  <cdu...@apple.com>
+
         Resync web-platform-tests/media-source from upstream
         https://bugs.webkit.org/show_bug.cgi?id=214164
 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/README.md (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/README.md	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/README.md	2020-07-14 23:01:51 UTC (rev 264380)
@@ -1,4 +1,4 @@
-== MIME types ==
+## MIME types
 
 `resources/mime-types.json` and `resources/generated-mime-types.json` contain MIME type tests. The tests are encoded as a JSON array. String values in the array serve as documentation. All other values are objects with the following fields:
 
@@ -15,14 +15,11 @@
 function isByteCompatible(str) {
   for(let i = 0; i < str.length; i++) {
     const charCode = str.charCodeAt(i);
-    // See https://github.com/web-platform-tests/wpt/issues/8372 for 0x0B and 0x0C
-    // See https://fetch.spec.whatwg.org/#concept-header-value for the remainder
+    // See https://fetch.spec.whatwg.org/#concept-header-value
     if(charCode > 0xFF) {
       return "incompatible";
     } else if(charCode === 0x00 || charCode === 0x0A || charCode === 0x0D) {
       return "header-value-incompatible";
-    } else if(charCode === 0x0B || charCode === 0x0C) {
-      return "wptserve-incompatible";
     }
   }
   return "compatible";
@@ -32,3 +29,14 @@
 `resources/generated-mime-types.json` is generated by running `resources/generated-mime-types.py`. Modify the latter to correct the former.
 
 These tests are used by resources in this directory to test various aspects of MIME types.
+
+## MIME type groups
+
+`resources/mime-groups.json` contains MIME type group-membership tests. The tests are encoded as a JSON array. String values in the array serve as documentation. All other values are objects with the following fields:
+
+* `input`: The MIME type to test.
+* `groups`: An array of zero or more groups to which the MIME type belongs.
+
+In order to pass the tests an implementation must treat each MIME type as belonging to the exact set of groups listed, with no additions or omissions.
+
+Note: As MIME type groups are used only while determining the computed MIME type of a resource and are not exposed in any API, no browser-based test harness is available.

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/charset-parameter.window-expected.txt (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/charset-parameter.window-expected.txt	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/charset-parameter.window-expected.txt	2020-07-14 23:01:51 UTC (rev 264380)
@@ -11,6 +11,10 @@
 PASS text/html; charset=gbk 
 PASS text/html;charset= gbk 
 FAIL text/html;charset= "gbk" assert_equals: expected "UTF-8" but got "GBK"
+PASS text/html;charset=gbk 
+PASS text/html;charset=gbk 
+FAIL text/html;charset=gbk assert_equals: expected "UTF-8" but got "GBK"
+FAIL text/html;charset=gbk assert_equals: expected "UTF-8" but got "GBK"
 PASS text/html;charset='gbk' 
 PASS text/html;charset='gbk 
 PASS text/html;charset=gbk' 

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/charset-parameter.window.js (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/charset-parameter.window.js	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/charset-parameter.window.js	2020-07-14 23:01:51 UTC (rev 264380)
@@ -6,14 +6,11 @@
 function isByteCompatible(str) {
   for(let i = 0; i < str.length; i++) {
     const charCode = str.charCodeAt(i);
-    // See https://github.com/web-platform-tests/wpt/issues/8372 for 0x0B and 0x0C
-    // See https://fetch.spec.whatwg.org/#concept-header-value for the remainder
+    // See https://fetch.spec.whatwg.org/#concept-header-value
     if(charCode > 0xFF) {
       return "incompatible";
     } else if(charCode === 0x00 || charCode === 0x0A || charCode === 0x0D) {
       return "header-value-incompatible";
-    } else if(charCode === 0x0B || charCode === 0x0C) {
-      return "wptserve-incompatible";
     }
   }
   return "compatible";

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any-expected.txt	2020-07-14 23:01:51 UTC (rev 264380)
@@ -22,6 +22,14 @@
 FAIL text/html;charset= gbk (Request/Response) assert_equals: expected "text/html;charset=\" gbk\"" but got "text/html"
 FAIL text/html;charset= "gbk" (Blob/File) assert_equals: Blob expected "text/html;charset=\" \\\"gbk\\\"\"" but got "text/html;charset= \"gbk\""
 FAIL text/html;charset= "gbk" (Request/Response) assert_equals: expected "text/html;charset=\" \\\"gbk\\\"\"" but got "text/html"
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
 PASS text/html;charset='gbk' (Blob/File) 
 FAIL text/html;charset='gbk' (Request/Response) assert_equals: expected "text/html;charset='gbk'" but got "text/html"
 PASS text/html;charset='gbk (Blob/File) 
@@ -84,10 +92,34 @@
 PASS x/x;x=  (Request/Response) 
 FAIL x/x;x=	 (Blob/File) assert_equals: Blob expected "x/x" but got ""
 PASS x/x;x=	 (Request/Response) 
+FAIL x/x
+\r	 ;x=x (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
+PASS x/x
+\r	 ;x=x (Request/Response) 
+FAIL 
+\r	 x/x;x=x
+\r	  (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
+FAIL 
+\r	 x/x;x=x
+\r	  (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+FAIL x/x;
+\r	 x=x
+\r	 ;x=y (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
+PASS x/x;
+\r	 x=x
+\r	 ;x=y (Request/Response) 
 FAIL text/html;test=ÿ;charset=gbk (Blob/File) assert_equals: Blob expected "text/html;test=\"ÿ\";charset=gbk" but got ""
 FAIL text/html;test=ÿ;charset=gbk (Request/Response) assert_equals: expected "text/html;test=\"ÿ\";charset=gbk" but got "text/html"
 FAIL x/x;test=�;x=x (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
 PASS x/x;test=�;x=x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
 PASS  (Blob/File) 
 PASS  (Request/Response) 
 PASS 	 (Blob/File) 
@@ -114,6 +146,12 @@
 FAIL {/} (Request/Response) assert_equals: expected "" but got "{/}"
 PASS Ā/Ā (Blob/File) 
 PASS Ā/Ā (Request/Response) 
+FAIL text /html (Blob/File) assert_equals: Blob expected "" but got "text /html"
+FAIL text /html (Request/Response) assert_equals: expected "" but got "text"
+FAIL text/ html (Blob/File) assert_equals: Blob expected "" but got "text/ html"
+FAIL text/ html (Request/Response) assert_equals: expected "" but got "text/"
+FAIL "text/html" (Blob/File) assert_equals: Blob expected "" but got "\"text/html\""
+FAIL "text/html" (Request/Response) assert_equals: expected "" but got "\"text/html\""
 PASS \0/x (Blob/File) 
 PASS \0/x (Request/Response) 
 PASS x/\0 (Blob/File) 
@@ -213,11 +251,11 @@
 PASS 
 /x (Blob/File) 
 FAIL 
-/x (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+/x (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 PASS x/
  (Blob/File) 
 FAIL x/
- (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+ (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 FAIL x/x;
 =x;bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""
 PASS x/x;
@@ -251,9 +289,9 @@
 FAIL x/x;x="";bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""
 FAIL x/x;x="";bonus=x (Request/Response) assert_equals: expected "x/x;bonus=x" but got "x/x"
 PASS \r/x (Blob/File) 
-FAIL \r/x (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+FAIL \r/x (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 PASS x/\r (Blob/File) 
-FAIL x/\r (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+FAIL x/\r (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 FAIL x/x;\r=x;bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""
 PASS x/x;\r=x;bonus=x (Request/Response) 
 FAIL x/x;x=\r;bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any.js (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any.js	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any.js	2020-07-14 23:01:51 UTC (rev 264380)
@@ -10,14 +10,11 @@
 function isByteCompatible(str) {
   for(let i = 0; i < str.length; i++) {
     const charCode = str.charCodeAt(i);
-    // See https://github.com/web-platform-tests/wpt/issues/8372 for 0x0B and 0x0C
-    // See https://fetch.spec.whatwg.org/#concept-header-value for the remainder
+    // See https://fetch.spec.whatwg.org/#concept-header-value
     if(charCode > 0xFF) {
       return "incompatible";
     } else if(charCode === 0x00 || charCode === 0x0A || charCode === 0x0D) {
       return "header-value-incompatible";
-    } else if(charCode === 0x0B || charCode === 0x0C) {
-      return "wptserve-incompatible";
     }
   }
   return "compatible";
@@ -37,8 +34,8 @@
     promise_test(() => {
       const compatibleNess = isByteCompatible(val.input);
       if(compatibleNess === "incompatible" || compatibleNess === "header-value-incompatible") {
-        assert_throws(new TypeError(), () => new Request("about:blank", { headers: [["Content-Type", val.input]] }));
-        assert_throws(new TypeError(), () => new Response(null, { headers: [["Content-Type", val.input]] }));
+        assert_throws_js(TypeError, () => new Request("about:blank", { headers: [["Content-Type", val.input]] }));
+        assert_throws_js(TypeError, () => new Response(null, { headers: [["Content-Type", val.input]] }));
         return Promise.resolve();
       } else {
         return Promise.all([

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/parsing.any.worker-expected.txt	2020-07-14 23:01:51 UTC (rev 264380)
@@ -22,6 +22,14 @@
 FAIL text/html;charset= gbk (Request/Response) assert_equals: expected "text/html;charset=\" gbk\"" but got "text/html"
 FAIL text/html;charset= "gbk" (Blob/File) assert_equals: Blob expected "text/html;charset=\" \\\"gbk\\\"\"" but got "text/html;charset= \"gbk\""
 FAIL text/html;charset= "gbk" (Request/Response) assert_equals: expected "text/html;charset=\" \\\"gbk\\\"\"" but got "text/html"
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
+FAIL text/html;charset=gbk (Blob/File) assert_equals: Blob expected "text/html" but got ""
+PASS text/html;charset=gbk (Request/Response) 
 PASS text/html;charset='gbk' (Blob/File) 
 FAIL text/html;charset='gbk' (Request/Response) assert_equals: expected "text/html;charset='gbk'" but got "text/html"
 PASS text/html;charset='gbk (Blob/File) 
@@ -84,10 +92,34 @@
 PASS x/x;x=  (Request/Response) 
 FAIL x/x;x=	 (Blob/File) assert_equals: Blob expected "x/x" but got ""
 PASS x/x;x=	 (Request/Response) 
+FAIL x/x
+\r	 ;x=x (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
+PASS x/x
+\r	 ;x=x (Request/Response) 
+FAIL 
+\r	 x/x;x=x
+\r	  (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
+FAIL 
+\r	 x/x;x=x
+\r	  (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+FAIL x/x;
+\r	 x=x
+\r	 ;x=y (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
+PASS x/x;
+\r	 x=x
+\r	 ;x=y (Request/Response) 
 FAIL text/html;test=ÿ;charset=gbk (Blob/File) assert_equals: Blob expected "text/html;test=\"ÿ\";charset=gbk" but got ""
 FAIL text/html;test=ÿ;charset=gbk (Request/Response) assert_equals: expected "text/html;test=\"ÿ\";charset=gbk" but got "text/html"
 FAIL x/x;test=�;x=x (Blob/File) assert_equals: Blob expected "x/x;x=x" but got ""
 PASS x/x;test=�;x=x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
+PASS x/x (Blob/File) 
+PASS x/x (Request/Response) 
 PASS  (Blob/File) 
 PASS  (Request/Response) 
 PASS 	 (Blob/File) 
@@ -114,6 +146,12 @@
 FAIL {/} (Request/Response) assert_equals: expected "" but got "{/}"
 PASS Ā/Ā (Blob/File) 
 PASS Ā/Ā (Request/Response) 
+FAIL text /html (Blob/File) assert_equals: Blob expected "" but got "text /html"
+FAIL text /html (Request/Response) assert_equals: expected "" but got "text"
+FAIL text/ html (Blob/File) assert_equals: Blob expected "" but got "text/ html"
+FAIL text/ html (Request/Response) assert_equals: expected "" but got "text/"
+FAIL "text/html" (Blob/File) assert_equals: Blob expected "" but got "\"text/html\""
+FAIL "text/html" (Request/Response) assert_equals: expected "" but got "\"text/html\""
 PASS \0/x (Blob/File) 
 PASS \0/x (Request/Response) 
 PASS x/\0 (Blob/File) 
@@ -213,11 +251,11 @@
 PASS 
 /x (Blob/File) 
 FAIL 
-/x (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+/x (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 PASS x/
  (Blob/File) 
 FAIL x/
- (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+ (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 FAIL x/x;
 =x;bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""
 PASS x/x;
@@ -251,9 +289,9 @@
 FAIL x/x;x="";bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""
 FAIL x/x;x="";bonus=x (Request/Response) assert_equals: expected "x/x;bonus=x" but got "x/x"
 PASS \r/x (Blob/File) 
-FAIL \r/x (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+FAIL \r/x (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 PASS x/\r (Blob/File) 
-FAIL x/\r (Request/Response) assert_throws: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
+FAIL x/\r (Request/Response) assert_throws_js: function "() => new Request("about:blank", { headers: [["Content-Type", val.input]] })" did not throw
 FAIL x/x;\r=x;bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""
 PASS x/x;\r=x;bonus=x (Request/Response) 
 FAIL x/x;x=\r;bonus=x (Blob/File) assert_equals: Blob expected "x/x;bonus=x" but got ""

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-charset.py (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-charset.py	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-charset.py	2020-07-14 23:01:51 UTC (rev 264380)
@@ -1,3 +1,18 @@
+from wptserve.utils import isomorphic_encode
+
 def main(request, response):
-    response.headers.set("Content-Type", request.GET.first("type"));
-    response.content = "<meta charset=utf-8>\n<script>document.write(document.characterSet)</script>"
+    content = b"<meta charset=utf-8>\n<script>document.write(document.characterSet)</script>"
+
+    # This uses the following rather than
+    #   response.headers.set("Content-Type", request.GET.first("type"));
+    #   response.content = content
+    # to work around https://github.com/web-platform-tests/wpt/issues/8372.
+
+    response.add_required_headers = False
+    output = b"HTTP/1.1 200 OK\r\n"
+    output += b"Content-Length: " + isomorphic_encode(str(len(content))) + b"\r\n"
+    output += b"Content-Type: " + request.GET.first(b"type") + b"\r\n"
+    output += b"\r\n"
+    output += content
+    response.writer.write(output)
+    response.close_connection = True

Added: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-groups.json (0 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-groups.json	                        (rev 0)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-groups.json	2020-07-14 23:01:51 UTC (rev 264380)
@@ -0,0 +1,159 @@
+[
+    {"input": "x/x",                               "groups": []},
+    {"input": "image/x",                           "groups": ["image"]},
+    {"input": "audio/x",                           "groups": ["audio or video"]},
+    {"input": "video/x",                           "groups": ["audio or video"]},
+    {"input": "application/ogg",                   "groups": ["audio or video"]},
+    {"input": "application/ogg;x=x",               "groups": ["audio or video"]},
+    {"input": "font/x",                            "groups": ["font"]},
+    {"input": "application/font-cff",              "groups": ["font"]},
+    {"input": "application/font-cff;x=x",          "groups": ["font"]},
+    {"input": "application/font-off",              "groups": ["font"]},
+    {"input": "application/font-off;x=x",          "groups": ["font"]},
+    {"input": "application/font-sfnt",             "groups": ["font"]},
+    {"input": "application/font-sfnt;x=x",         "groups": ["font"]},
+    {"input": "application/font-ttf",              "groups": ["font"]},
+    {"input": "application/font-ttf;x=x",          "groups": ["font"]},
+    {"input": "application/font-woff",             "groups": ["font"]},
+    {"input": "application/font-woff;x=x",         "groups": ["font"]},
+    {"input": "application/vnd.ms-fontobject",     "groups": ["font"]},
+    {"input": "application/vnd.ms-fontobject;x=x", "groups": ["font"]},
+    {"input": "application/vnd.ms-opentype",       "groups": ["font"]},
+    {"input": "application/vnd.ms-opentype;x=x",   "groups": ["font"]},
+    {"input": "x/x+zip",                           "groups": ["ZIP-based"]},
+    {"input": "x/x+zip;x=x",                       "groups": ["ZIP-based"]},
+    {"input": "x/+zip",                            "groups": ["ZIP-based"]},
+    {"input": "x/+zip;x=x",                        "groups": ["ZIP-based"]},
+    "application/zip also matches the archive group",
+    {"input": "application/zip",                   "groups": ["ZIP-based", "archive"]},
+    {"input": "application/zip;x=x",               "groups": ["ZIP-based", "archive"]},
+    {"input": "application/x-rar-compressed",      "groups": ["archive"]},
+    {"input": "application/x-rar-compressed;x=x",  "groups": ["archive"]},
+    {"input": "application/x-gzip",                "groups": ["archive"]},
+    {"input": "application/x-gzip;x=x",            "groups": ["archive"]},
+    "XML is also scriptable",
+    {"input": "x/x+xml",                           "groups": ["XML", "scriptable"]},
+    {"input": "x/x+xml;x=x",                       "groups": ["XML", "scriptable"]},
+    {"input": "x/+xml",                            "groups": ["XML", "scriptable"]},
+    {"input": "x/+xml;x=x",                        "groups": ["XML", "scriptable"]},
+    {"input": "application/xml",                   "groups": ["XML", "scriptable"]},
+    {"input": "application/xml;x=x",               "groups": ["XML", "scriptable"]},
+    {"input": "text/xml",                          "groups": ["XML", "scriptable"]},
+    {"input": "text/xml;x=x",                      "groups": ["XML", "scriptable"]},
+    "HTML is scriptable",
+    {"input": "text/html",                         "groups": ["HTML", "scriptable"]},
+    {"input": "text/html;x=x",                     "groups": ["HTML", "scriptable"]},
+    "PDF is scriptable",
+    {"input": "application/pdf",                   "groups": ["scriptable"]},
+    {"input": "application/pdf;x=x",               "groups": ["scriptable"]},
+    {"input": "application/ecmascript",            "groups": ["_javascript_"]},
+    {"input": "application/ecmascript;x=x",        "groups": ["_javascript_"]},
+    {"input": "application/_javascript_",            "groups": ["_javascript_"]},
+    {"input": "application/_javascript_;x=x",        "groups": ["_javascript_"]},
+    {"input": "application/x-ecmascript",          "groups": ["_javascript_"]},
+    {"input": "application/x-ecmascript;x=x",      "groups": ["_javascript_"]},
+    {"input": "application/x-_javascript_",          "groups": ["_javascript_"]},
+    {"input": "application/x-_javascript_;x=x",      "groups": ["_javascript_"]},
+    {"input": "text/ecmascript",                   "groups": ["_javascript_"]},
+    {"input": "text/ecmascript;x=x",               "groups": ["_javascript_"]},
+    {"input": "text/_javascript_",                   "groups": ["_javascript_"]},
+    {"input": "text/_javascript_;x=x",               "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.0",                "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.0;x=x",            "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.1",                "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.1;x=x",            "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.2",                "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.2;x=x",            "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.3",                "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.3;x=x",            "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.4",                "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.4;x=x",            "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.5",                "groups": ["_javascript_"]},
+    {"input": "text/_javascript_1.5;x=x",            "groups": ["_javascript_"]},
+    {"input": "text/jscript",                      "groups": ["_javascript_"]},
+    {"input": "text/jscript;x=x",                  "groups": ["_javascript_"]},
+    {"input": "text/livescript",                   "groups": ["_javascript_"]},
+    {"input": "text/livescript;x=x",               "groups": ["_javascript_"]},
+    {"input": "text/x-ecmascript",                 "groups": ["_javascript_"]},
+    {"input": "text/x-ecmascript;x=x",             "groups": ["_javascript_"]},
+    {"input": "text/x-_javascript_",                 "groups": ["_javascript_"]},
+    {"input": "text/x-_javascript_;x=x",             "groups": ["_javascript_"]},
+    {"input": "x/x+json",                          "groups": ["JSON"]},
+    {"input": "x/x+json;x=x",                      "groups": ["JSON"]},
+    {"input": "x/+json",                           "groups": ["JSON"]},
+    {"input": "x/+json;x=x",                       "groups": ["JSON"]},
+    {"input": "application/json",                  "groups": ["JSON"]},
+    {"input": "application/json;x=x",              "groups": ["JSON"]},
+    {"input": "text/json",                         "groups": ["JSON"]},
+    {"input": "text/json;x=x",                     "groups": ["JSON"]},
+    {"input": "x/x;type=image",                    "groups": []},
+    {"input": "x/x;type=audio",                    "groups": []},
+    {"input": "x/x;type=video",                    "groups": []},
+    {"input": "x/x;type=font",                     "groups": []},
+    {"input": "ximage/x",                          "groups": []},
+    {"input": "xaudio/x",                          "groups": []},
+    {"input": "xvideo/x",                          "groups": []},
+    {"input": "xfont/x",                           "groups": []},
+    {"input": "imagex/x",                          "groups": []},
+    {"input": "audiox/x",                          "groups": []},
+    {"input": "videox/x",                          "groups": []},
+    {"input": "fontx/x",                           "groups": []},
+    {"input": "x/image",                           "groups": []},
+    {"input": "x/png",                             "groups": []},
+    {"input": "x/audio",                           "groups": []},
+    {"input": "x/video",                           "groups": []},
+    {"input": "x/ogg",                             "groups": []},
+    {"input": "x/font",                            "groups": []},
+    {"input": "x/woff",                            "groups": []},
+    {"input": "x/font-ttf",                        "groups": []},
+    {"input": "x/x;x=\"application/font-ttf\"",    "groups": []},
+    {"input": "x/zip",                             "groups": []},
+    {"input": "x/x-gzip",                          "groups": []},
+    {"input": "x/x-rar-compressed",                "groups": []},
+    {"input": "x/x;x=\"application/x-gip\"",       "groups": []},
+    {"input": "x+zip/x",                           "groups": []},
+    {"input": "x/x;x=x+zip",                       "groups": []},
+    {"input": "x/x;subtype=x+zip",                 "groups": []},
+    {"input": "x/xml",                             "groups": []},
+    {"input": "x/x;x=\"application/xml\"",         "groups": []},
+    {"input": "x+xml/x",                           "groups": []},
+    {"input": "x/x;x=x+xml",                       "groups": []},
+    {"input": "x/x;subtype=x+xml",                 "groups": []},
+    {"input": "x/pdf",                             "groups": []},
+    {"input": "x/html",                            "groups": []},
+    {"input": "x/ecmascript",                      "groups": []},
+    {"input": "x/_javascript_",                      "groups": []},
+    {"input": "x/x-ecmascript",                    "groups": []},
+    {"input": "x/x-_javascript_",                    "groups": []},
+    {"input": "x/jscript",                         "groups": []},
+    {"input": "x/livescript",                      "groups": []},
+    {"input": "x/_javascript_1.0",                   "groups": []},
+    {"input": "x/_javascript_1.1",                   "groups": []},
+    {"input": "x/_javascript_1.2",                   "groups": []},
+    {"input": "x/_javascript_1.3",                   "groups": []},
+    {"input": "x/_javascript_1.4",                   "groups": []},
+    {"input": "x/_javascript_1.5",                   "groups": []},
+    {"input": "x/x;x=\"application/_javascript_\"",  "groups": []},
+    {"input": "x/json",                            "groups": []},
+    {"input": "x/x;x=\"application/json\"",        "groups": []},
+    {"input": "x+json/x",                          "groups": []},
+    {"input": "x/x;x=x+json",                      "groups": []},
+    {"input": "x/x;subtype=x+json",                "groups": []},
+    {"input": "image/png",                         "groups": ["image"]},
+    {"input": "audio/mp4",                         "groups": ["audio or video"]},
+    {"input": "video/mpeg",                        "groups": ["audio or video"]},
+    {"input": "font/woff",                         "groups": ["font"]},
+    "SVG is both image and XML, thus also scriptable",
+    {"input": "image/svg+xml",                     "groups": ["image", "XML", "scriptable"]},
+    "Hypothetical SVG font type",
+    {"input": "font/svg+xml",                      "groups": ["font", "XML", "scriptable"]},
+    "XHTML is not considered HTML",
+    {"input": "application/xhtml+xml",             "groups": ["XML", "scriptable"]},
+    "Subtype longer than 255",
+    {"input": "x/01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789+zip",
+                                                   "groups": ["ZIP-based"]},
+    {"input": "x/01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789+xml",
+                                                   "groups": ["XML", "scriptable"]},
+    {"input": "x/01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789+json",
+                                                   "groups": ["JSON"]}
+]

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-types.json (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-types.json	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-types.json	2020-07-14 23:01:51 UTC (rev 264380)
@@ -69,6 +69,31 @@
     "navigable": true,
     "encoding": null
   },
+  "0x0B and 0x0C",
+  {
+    "input": "text/html;charset=\u000Bgbk",
+    "output": "text/html",
+    "navigable": true,
+    "encoding": null
+  },
+  {
+    "input": "text/html;charset=\u000Cgbk",
+    "output": "text/html",
+    "navigable": true,
+    "encoding": null
+  },
+  {
+    "input": "text/html;\u000Bcharset=gbk",
+    "output": "text/html",
+    "navigable": true,
+    "encoding": null
+  },
+  {
+    "input": "text/html;\u000Ccharset=gbk",
+    "output": "text/html",
+    "navigable": true,
+    "encoding": null
+  },
   "Single quotes are a token, not a delimiter",
   {
     "input": "text/html;charset='gbk'",
@@ -250,6 +275,18 @@
     "input": "x/x;x=\t",
     "output": "x/x"
   },
+  {
+    "input": "x/x\n\r\t ;x=x",
+    "output": "x/x;x=x"
+  },
+  {
+    "input": "\n\r\t x/x;x=x\n\r\t ",
+    "output": "x/x;x=x"
+  },
+  {
+    "input": "x/x;\n\r\t x=x\n\r\t ;x=y",
+    "output": "x/x;x=x"
+  },
   "Latin1",
   {
     "input": "text/html;test=\u00FF;charset=gbk",
@@ -264,6 +301,22 @@
   },
   "Failure",
   {
+    "input": "\u000Bx/x",
+    "output": null
+  },
+  {
+    "input": "\u000Cx/x",
+    "output": null
+  },
+  {
+    "input": "x/x\u000B",
+    "output": null
+  },
+  {
+    "input": "x/x\u000C",
+    "output": null
+  },
+  {
     "input": "",
     "output": null
   },
@@ -314,5 +367,17 @@
   {
     "input": "\u0100/\u0100",
     "output": null
+  },
+  {
+    "input": "text /html",
+    "output": null
+  },
+  {
+    "input": "text/ html",
+    "output": null
+  },
+  {
+    "input": "\"text/html\"",
+    "output": null
   }
 ]

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/w3c-import.log (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/w3c-import.log	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/w3c-import.log	2020-07-14 23:01:51 UTC (rev 264380)
@@ -17,4 +17,5 @@
 /LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/generated-mime-types.json
 /LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/generated-mime-types.py
 /LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-charset.py
+/LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-groups.json
 /LayoutTests/imported/w3c/web-platform-tests/mimesniff/mime-types/resources/mime-types.json

Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/xhr/overridemimetype-blob-expected.txt (264379 => 264380)


--- trunk/LayoutTests/imported/w3c/web-platform-tests/xhr/overridemimetype-blob-expected.txt	2020-07-14 22:51:19 UTC (rev 264379)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/xhr/overridemimetype-blob-expected.txt	2020-07-14 23:01:51 UTC (rev 264380)
@@ -13,50 +13,69 @@
 FAIL 9) MIME types need to be parsed and serialized: text/html; charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
 FAIL 10) MIME types need to be parsed and serialized: text/html;charset= gbk assert_equals: expected "text/html;charset=\" gbk\"" but got "text/html"
 FAIL 11) MIME types need to be parsed and serialized: text/html;charset= "gbk" assert_equals: expected "text/html;charset=\" \\\"gbk\\\"\"" but got "text/html"
-FAIL 12) MIME types need to be parsed and serialized: text/html;charset='gbk' assert_equals: expected "text/html;charset='gbk'" but got "text/html"
-FAIL 13) MIME types need to be parsed and serialized: text/html;charset='gbk assert_equals: expected "text/html;charset='gbk" but got "text/html"
-FAIL 14) MIME types need to be parsed and serialized: text/html;charset=gbk' assert_equals: expected "text/html;charset=gbk'" but got "text/html"
-FAIL 15) MIME types need to be parsed and serialized: text/html;charset=';charset=GBK assert_equals: expected "text/html;charset='" but got "text/html"
-FAIL 16) MIME types need to be parsed and serialized: text/html;test;charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 17) MIME types need to be parsed and serialized: text/html;test=;charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 18) MIME types need to be parsed and serialized: text/html;';charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 19) MIME types need to be parsed and serialized: text/html;";charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 20) MIME types need to be parsed and serialized: text/html ; ; charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 21) MIME types need to be parsed and serialized: text/html;;;;charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 22) MIME types need to be parsed and serialized: text/html;charset= ";charset=GBK assert_equals: expected "text/html;charset=GBK" but got "text/html"
-FAIL 23) MIME types need to be parsed and serialized: text/html;charset=";charset=foo";charset=GBK assert_equals: expected "text/html;charset=GBK" but got "text/html"
-FAIL 24) MIME types need to be parsed and serialized: text/html;charset="gbk" assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 25) MIME types need to be parsed and serialized: text/html;charset="gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 26) MIME types need to be parsed and serialized: text/html;charset=gbk" assert_equals: expected "text/html;charset=\"gbk\\\"\"" but got "text/html"
-FAIL 27) MIME types need to be parsed and serialized: text/html;charset=" gbk" assert_equals: expected "text/html;charset=\" gbk\"" but got "text/html"
-FAIL 28) MIME types need to be parsed and serialized: text/html;charset="gbk " assert_equals: expected "text/html;charset=\"gbk \"" but got "text/html"
-FAIL 29) MIME types need to be parsed and serialized: text/html;charset="\ gbk" assert_equals: expected "text/html;charset=\" gbk\"" but got "text/html"
-FAIL 30) MIME types need to be parsed and serialized: text/html;charset="\g\b\k" assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 31) MIME types need to be parsed and serialized: text/html;charset="gbk"x assert_equals: expected "text/html;charset=gbk" but got "text/html"
-FAIL 32) MIME types need to be parsed and serialized: text/html;charset="";charset=GBK assert_equals: expected "text/html;charset=\"\"" but got "text/html"
-FAIL 33) MIME types need to be parsed and serialized: text/html;charset=";charset=GBK assert_equals: expected "text/html;charset=\";charset=GBK\"" but got "text/html"
-FAIL 34) MIME types need to be parsed and serialized: text/html;charset={gbk} assert_equals: expected "text/html;charset=\"{gbk}\"" but got "text/html"
-FAIL 35) MIME types need to be parsed and serialized: text/html;0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789=x;charset=gbk assert_equals: expected "text/html;0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789=x;charset=gbk" but got "text/html"
-PASS 36) MIME types need to be parsed and serialized: 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789/0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 
-FAIL 37) MIME types need to be parsed and serialized: !#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz;!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz assert_equals: expected "!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz/!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz;!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz=!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" but got "!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz/!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
-FAIL 38) MIME types need to be parsed and serialized: x/x;x="	 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ" assert_equals: expected "x/x;x=\"\t !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ\"" but got "x/x"
-PASS 39) MIME types need to be parsed and serialized: x/x;test 
-FAIL 40) MIME types need to be parsed and serialized: x/x;test="\ assert_equals: expected "x/x;test=\"\\\\\"" but got "x/x"
-PASS 41) MIME types need to be parsed and serialized: x/x;x=  
-PASS 42) MIME types need to be parsed and serialized: x/x;x=	 
-FAIL 43) MIME types need to be parsed and serialized: text/html;test=ÿ;charset=gbk assert_equals: expected "text/html;test=\"ÿ\";charset=gbk" but got "text/html"
-FAIL 44) MIME types need to be parsed and serialized: x/x;test=�;x=x assert_equals: expected "x/x;x=x" but got "x/x"
-PASS 45) MIME types need to be parsed and serialized:  
-PASS 46) MIME types need to be parsed and serialized: 	 
-PASS 47) MIME types need to be parsed and serialized: / 
-PASS 48) MIME types need to be parsed and serialized: bogus 
-PASS 49) MIME types need to be parsed and serialized: bogus/ 
-PASS 50) MIME types need to be parsed and serialized: bogus/  
-PASS 51) MIME types need to be parsed and serialized: bogus/bogus/; 
-PASS 52) MIME types need to be parsed and serialized: </> 
-PASS 53) MIME types need to be parsed and serialized: (/) 
-PASS 54) MIME types need to be parsed and serialized: ÿ/ÿ 
-PASS 55) MIME types need to be parsed and serialized: text/html(;doesnot=matter 
-PASS 56) MIME types need to be parsed and serialized: {/} 
-PASS 57) MIME types need to be parsed and serialized: Ā/Ā 
+PASS 12) MIME types need to be parsed and serialized: text/html;charset=gbk 
+PASS 13) MIME types need to be parsed and serialized: text/html;charset=gbk 
+PASS 14) MIME types need to be parsed and serialized: text/html;charset=gbk 
+PASS 15) MIME types need to be parsed and serialized: text/html;charset=gbk 
+FAIL 16) MIME types need to be parsed and serialized: text/html;charset='gbk' assert_equals: expected "text/html;charset='gbk'" but got "text/html"
+FAIL 17) MIME types need to be parsed and serialized: text/html;charset='gbk assert_equals: expected "text/html;charset='gbk" but got "text/html"
+FAIL 18) MIME types need to be parsed and serialized: text/html;charset=gbk' assert_equals: expected "text/html;charset=gbk'" but got "text/html"
+FAIL 19) MIME types need to be parsed and serialized: text/html;charset=';charset=GBK assert_equals: expected "text/html;charset='" but got "text/html"
+FAIL 20) MIME types need to be parsed and serialized: text/html;test;charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 21) MIME types need to be parsed and serialized: text/html;test=;charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 22) MIME types need to be parsed and serialized: text/html;';charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 23) MIME types need to be parsed and serialized: text/html;";charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 24) MIME types need to be parsed and serialized: text/html ; ; charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 25) MIME types need to be parsed and serialized: text/html;;;;charset=gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 26) MIME types need to be parsed and serialized: text/html;charset= ";charset=GBK assert_equals: expected "text/html;charset=GBK" but got "text/html"
+FAIL 27) MIME types need to be parsed and serialized: text/html;charset=";charset=foo";charset=GBK assert_equals: expected "text/html;charset=GBK" but got "text/html"
+FAIL 28) MIME types need to be parsed and serialized: text/html;charset="gbk" assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 29) MIME types need to be parsed and serialized: text/html;charset="gbk assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 30) MIME types need to be parsed and serialized: text/html;charset=gbk" assert_equals: expected "text/html;charset=\"gbk\\\"\"" but got "text/html"
+FAIL 31) MIME types need to be parsed and serialized: text/html;charset=" gbk" assert_equals: expected "text/html;charset=\" gbk\"" but got "text/html"
+FAIL 32) MIME types need to be parsed and serialized: text/html;charset="gbk " assert_equals: expected "text/html;charset=\"gbk \"" but got "text/html"
+FAIL 33) MIME types need to be parsed and serialized: text/html;charset="\ gbk" assert_equals: expected "text/html;charset=\" gbk\"" but got "text/html"
+FAIL 34) MIME types need to be parsed and serialized: text/html;charset="\g\b\k" assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 35) MIME types need to be parsed and serialized: text/html;charset="gbk"x assert_equals: expected "text/html;charset=gbk" but got "text/html"
+FAIL 36) MIME types need to be parsed and serialized: text/html;charset="";charset=GBK assert_equals: expected "text/html;charset=\"\"" but got "text/html"
+FAIL 37) MIME types need to be parsed and serialized: text/html;charset=";charset=GBK assert_equals: expected "text/html;charset=\";charset=GBK\"" but got "text/html"
+FAIL 38) MIME types need to be parsed and serialized: text/html;charset={gbk} assert_equals: expected "text/html;charset=\"{gbk}\"" but got "text/html"
+FAIL 39) MIME types need to be parsed and serialized: text/html;0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789=x;charset=gbk assert_equals: expected "text/html;0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789=x;charset=gbk" but got "text/html"
+PASS 40) MIME types need to be parsed and serialized: 0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789/0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789 
+FAIL 41) MIME types need to be parsed and serialized: !#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz/!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz;!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz=!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz assert_equals: expected "!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz/!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz;!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz=!#$%&'*+-.^_`|~0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz" but got "!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz/!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz"
+FAIL 42) MIME types need to be parsed and serialized: x/x;x="	 !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ" assert_equals: expected "x/x;x=\"\t !\\\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ\"" but got "x/x"
+PASS 43) MIME types need to be parsed and serialized: x/x;test 
+FAIL 44) MIME types need to be parsed and serialized: x/x;test="\ assert_equals: expected "x/x;test=\"\\\\\"" but got "x/x"
+PASS 45) MIME types need to be parsed and serialized: x/x;x=  
+PASS 46) MIME types need to be parsed and serialized: x/x;x=	 
+FAIL 47) MIME types need to be parsed and serialized: x/x
+\r	 ;x=x assert_equals: expected "x/x;x=x" but got "application/octet-stream"
+FAIL 48) MIME types need to be parsed and serialized: 
+\r	 x/x;x=x
+\r	  assert_equals: expected "x/x;x=x" but got ""
+FAIL 49) MIME types need to be parsed and serialized: x/x;
+\r	 x=x
+\r	 ;x=y assert_equals: expected "x/x;x=x" but got "x/x"
+FAIL 50) MIME types need to be parsed and serialized: text/html;test=ÿ;charset=gbk assert_equals: expected "text/html;test=\"ÿ\";charset=gbk" but got "text/html"
+FAIL 51) MIME types need to be parsed and serialized: x/x;test=�;x=x assert_equals: expected "x/x;x=x" but got "x/x"
+PASS 52) MIME types need to be parsed and serialized: x/x 
+PASS 53) MIME types need to be parsed and serialized: x/x 
+PASS 54) MIME types need to be parsed and serialized: x/x 
+PASS 55) MIME types need to be parsed and serialized: x/x 
+PASS 56) MIME types need to be parsed and serialized:  
+PASS 57) MIME types need to be parsed and serialized: 	 
+PASS 58) MIME types need to be parsed and serialized: / 
+PASS 59) MIME types need to be parsed and serialized: bogus 
+PASS 60) MIME types need to be parsed and serialized: bogus/ 
+PASS 61) MIME types need to be parsed and serialized: bogus/  
+PASS 62) MIME types need to be parsed and serialized: bogus/bogus/; 
+PASS 63) MIME types need to be parsed and serialized: </> 
+PASS 64) MIME types need to be parsed and serialized: (/) 
+PASS 65) MIME types need to be parsed and serialized: ÿ/ÿ 
+PASS 66) MIME types need to be parsed and serialized: text/html(;doesnot=matter 
+PASS 67) MIME types need to be parsed and serialized: {/} 
+PASS 68) MIME types need to be parsed and serialized: Ā/Ā 
+PASS 69) MIME types need to be parsed and serialized: text /html 
+PASS 70) MIME types need to be parsed and serialized: text/ html 
+PASS 71) MIME types need to be parsed and serialized: "text/html" 
 
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to