Test files without 2 passes: 44; Subtests without 2 passes: 737; Failure level: 737/737 (100.00%)
| Test | Ch73 |
|---|---|
| /FileAPI/url/cross-global-revoke.sub.html (3/3, 100.00%, 0.41% of total) | OK |
| It is not possible to revoke cross-origin blob URLs. | PASS |
| It is possible to revoke same-origin blob URLs from a different worker global. | FAIL |
| It is possible to revoke same-origin blob URLs from different frames. | FAIL |
| /FileAPI/reading-data-section/filereader_readAsDataURL.html (3/3, 100.00%, 0.41% of total) | OK |
| FileReader readyState during readAsDataURL | PASS |
| readAsDataURL result for Blob with specified MIME type | PASS |
| readAsDataURL result for Blob with unspecified MIME type | PASS |
| /FileAPI/blob/Blob-constructor.html (64/64, 100.00%, 8.68% of total) | OK |
| A String object should be treated as a sequence for the blobParts argument. | PASS |
| A Uint8Array object should be treated as a sequence for the blobParts argument. | PASS |
| A plain object with @@iterator and a length property should be treated as a sequence for the blobParts argument. | PASS |
| A plain object with @@iterator should be treated as a sequence for the blobParts argument. | PASS |
| A plain object with custom @@iterator should be treated as a sequence for the blobParts argument. | PASS |
| A platform object that supports indexed properties should be treated as a sequence for the blobParts argument (overwritten 'length'.) | PASS |
| Arguments should be evaluated from left to right. | PASS |
| Array with mixed types | PASS |
| Array with two blobs | PASS |
| Array with two buffers | PASS |
| Array with two bufferviews | PASS |
| ArrayBuffer elements of the blobParts array should be supported. | PASS |
| Blob constructor with no arguments | PASS |
| Blob constructor with no arguments, without 'new' | PASS |
| Blob constructor with undefined as first argument | PASS |
| Blob constructor without brackets | PASS |
| Blob interface object | PASS |
| Blob with type " image/gif " | PASS |
| Blob with type "" | PASS |
| Blob with type "A" | PASS |
| Blob with type "TEXT/HTML" | PASS |
| Blob with type "\timage/gif\t" | PASS |
| Blob with type "a" | PASS |
| Blob with type "image/gif;" | PASS |
| Blob with type "image/gif\0" | PASS |
| Blob with type "image/png" | PASS |
| Blob with type "text/html" | PASS |
| Blob with type "text/plain" | PASS |
| Blob with type "text/plain;charset=utf-8" | PASS |
| Blob with type "unknown/unknown" | PASS |
| Blob with type "å" | PASS |
| Blob with type "İmage/gif" | PASS |
| Blob with type "ımage/gif" | PASS |
| Blob with type "𐑾" | PASS |
| Changes to the blobParts array should be reflected in the returned Blob (pop). | FAIL |
| Changes to the blobParts array should be reflected in the returned Blob (unshift). | FAIL |
| Getters and value conversions should happen in order until an exception is thrown. | PASS |
| Passing "abc" for options should throw | PASS |
| Passing 123 for options should throw | PASS |
| Passing 123.4 for options should throw | PASS |
| Passing a Float64Array as element of the blobParts array should work. | PASS |
| Passing a FrozenArray as the blobParts array should work (FrozenArray<MessagePort>). | PASS |
| Passing an platform object that supports indexed properties as the blobParts array should work (attributes). | PASS |
| Passing an platform object that supports indexed properties as the blobParts array should work (select). | PASS |
| Passing function "function() {}" (index 5) for options should use the defaults (with newlines). | PASS |
| Passing function "function() {}" (index 5) for options should use the defaults. | PASS |
| Passing non-objects, Dates and RegExps for blobParts should throw a TypeError. | PASS |
| Passing null (index 0) for options should use the defaults (with newlines). | PASS |
| Passing null (index 0) for options should use the defaults. | PASS |
| Passing object "/regex/" (index 4) for options should use the defaults (with newlines). | PASS |
| Passing object "/regex/" (index 4) for options should use the defaults. | PASS |
| Passing object "[object Object]" (index 2) for options should use the defaults (with newlines). | PASS |
| Passing object "[object Object]" (index 2) for options should use the defaults. | PASS |
| Passing object "[object Object]" (index 3) for options should use the defaults (with newlines). | PASS |
| Passing object "[object Object]" (index 3) for options should use the defaults. | PASS |
| Passing true for options should throw | PASS |
| Passing typed arrays as elements of the blobParts array should work. | PASS |
| Passing undefined (index 1) for options should use the defaults (with newlines). | PASS |
| Passing undefined (index 1) for options should use the defaults. | PASS |
| The length getter should be invoked and any exceptions should be propagated. | PASS |
| ToString should be called on elements of the blobParts array and any exceptions should be propagated. | PASS |
| ToString should be called on elements of the blobParts array. | PASS |
| ToUint32 should be applied to the length and any exceptions should be propagated. | PASS |
| options properties should be accessed in lexicographic order. | PASS |
| /FileAPI/url/url-format.any.html (6/6, 100.00%, 0.81% of total) | OK |
| Blob URL parses correctly | PASS |
| Blob URL starts with "blob:" | PASS |
| Blob URL starts with "blob:" for Files | PASS |
| Generated Blob URLs are unique | PASS |
| Origin of Blob URL matches our origin | PASS |
| Origin of Blob URL matches our origin for Files | PASS |
| /FileAPI/url/url-with-fetch.any.html (15/15, 100.00%, 2.04% of total) | OK |
| Appending a path should cause fetch to fail | PASS |
| Appending a query string should cause fetch to fail | PASS |
| Blob URLs can be used in fetch | PASS |
| Only exact matches should revoke URLs, using fetch | PASS |
| Revoke blob URL after calling fetch, fetch should succeed | PASS |
| Revoke blob URL after creating Request, will fetch | FAIL |
| fetch of a revoked URL should fail | PASS |
| fetch should return Content-Type from Blob | PASS |
| fetch with a fragment should succeed | PASS |
| fetch with method "CUSTOM" should fail | PASS |
| fetch with method "DELETE" should fail | PASS |
| fetch with method "HEAD" should fail | PASS |
| fetch with method "OPTIONS" should fail | PASS |
| fetch with method "POST" should fail | PASS |
| fetch with method "PUT" should fail | PASS |
| /FileAPI/reading-data-section/filereader_result.html (3/3, 100.00%, 0.41% of total) | OK |
| readAsArrayBuffer | PASS |
| readAsDataURL | PASS |
| readAsText | PASS |
| /FileAPI/reading-data-section/FileReader-event-handler-attributes.html (6/6, 100.00%, 0.81% of total) | OK |
| FileReader.onabort: initial value | PASS |
| FileReader.onerror: initial value | PASS |
| FileReader.onload: initial value | PASS |
| FileReader.onloadend: initial value | PASS |
| FileReader.onloadstart: initial value | PASS |
| FileReader.onprogress: initial value | PASS |
| /FileAPI/unicode.html (4/4, 100.00%, 0.54% of total) | OK |
| Test that strings are not NFC normalized by Blob constructor | PASS |
| Test that strings are not NFC normalized by File constructor | PASS |
| Test that unpaired surrogates are replaced by Blob constructor | PASS |
| Test that unpaired surrogates are replaced by File constructor | PASS |
| /FileAPI/url/multi-global-origin-serialization.sub.html (1/1, 100.00%, 0.14% of total) | OK |
| Blob URL serialization (specifically the origin) in multi-global situations | PASS |
| /FileAPI/url/url-lifetime.html (2/2, 100.00%, 0.27% of total) | OK |
| Removing an iframe revokes its URLs | PASS |
| Terminating worker revokes its URLs | PASS |
| /FileAPI/fileReader.html (4/4, 100.00%, 0.54% of total) | OK |
| FileReader States -- abort | PASS |
| FileReader States -- events | PASS |
| FileReader interface object | PASS |
| no-argument FileReader constructor | PASS |
| /FileAPI/idlharness.html (99/99, 100.00%, 13.43% of total) | OK |
| Blob interface object length | PASS |
| Blob interface object name | PASS |
| Blob interface: attribute size | PASS |
| Blob interface: attribute type | PASS |
| Blob interface: calling slice(long long, long long, DOMString) on new Blob(["TEST"]) with too few arguments must throw TypeError | PASS |
| Blob interface: calling slice(long long, long long, DOMString) on new File(["myFileBits"], "myFileName") with too few arguments must throw TypeError | PASS |
| Blob interface: existence and properties of interface object | PASS |
| Blob interface: existence and properties of interface prototype object | PASS |
| Blob interface: existence and properties of interface prototype object's "constructor" property | PASS |
| Blob interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| Blob interface: new Blob(["TEST"]) must inherit property "size" with the proper type | PASS |
| Blob interface: new Blob(["TEST"]) must inherit property "slice(long long, long long, DOMString)" with the proper type | PASS |
| Blob interface: new Blob(["TEST"]) must inherit property "type" with the proper type | PASS |
| Blob interface: new File(["myFileBits"], "myFileName") must inherit property "size" with the proper type | PASS |
| Blob interface: new File(["myFileBits"], "myFileName") must inherit property "slice(long long, long long, DOMString)" with the proper type | PASS |
| Blob interface: new File(["myFileBits"], "myFileName") must inherit property "type" with the proper type | PASS |
| Blob interface: operation slice(long long, long long, DOMString) | PASS |
| Blob must be primary interface of new Blob(["TEST"]) | PASS |
| File interface object length | PASS |
| File interface object name | PASS |
| File interface: attribute lastModified | PASS |
| File interface: attribute name | PASS |
| File interface: existence and properties of interface object | PASS |
| File interface: existence and properties of interface prototype object | PASS |
| File interface: existence and properties of interface prototype object's "constructor" property | PASS |
| File interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| File interface: new File(["myFileBits"], "myFileName") must inherit property "lastModified" with the proper type | PASS |
| File interface: new File(["myFileBits"], "myFileName") must inherit property "name" with the proper type | PASS |
| File must be primary interface of new File(["myFileBits"], "myFileName") | PASS |
| FileList interface object length | PASS |
| FileList interface object name | PASS |
| FileList interface: attribute length | PASS |
| FileList interface: calling item(unsigned long) on document.querySelector("#fileChooser").files with too few arguments must throw TypeError | PASS |
| FileList interface: document.querySelector("#fileChooser").files must inherit property "item(unsigned long)" with the proper type | PASS |
| FileList interface: document.querySelector("#fileChooser").files must inherit property "length" with the proper type | PASS |
| FileList interface: existence and properties of interface object | PASS |
| FileList interface: existence and properties of interface prototype object | PASS |
| FileList interface: existence and properties of interface prototype object's "constructor" property | PASS |
| FileList interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| FileList interface: operation item(unsigned long) | PASS |
| FileList must be primary interface of document.querySelector("#fileChooser").files | PASS |
| FileReader interface object length | PASS |
| FileReader interface object name | PASS |
| FileReader interface: attribute error | PASS |
| FileReader interface: attribute onabort | PASS |
| FileReader interface: attribute onerror | PASS |
| FileReader interface: attribute onload | PASS |
| FileReader interface: attribute onloadend | PASS |
| FileReader interface: attribute onloadstart | PASS |
| FileReader interface: attribute onprogress | PASS |
| FileReader interface: attribute readyState | PASS |
| FileReader interface: attribute result | PASS |
| FileReader interface: calling readAsArrayBuffer(Blob) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: calling readAsBinaryString(Blob) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: calling readAsDataURL(Blob) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: calling readAsText(Blob, DOMString) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: constant DONE on interface object | PASS |
| FileReader interface: constant DONE on interface prototype object | PASS |
| FileReader interface: constant EMPTY on interface object | PASS |
| FileReader interface: constant EMPTY on interface prototype object | PASS |
| FileReader interface: constant LOADING on interface object | PASS |
| FileReader interface: constant LOADING on interface prototype object | PASS |
| FileReader interface: existence and properties of interface object | PASS |
| FileReader interface: existence and properties of interface prototype object | PASS |
| FileReader interface: existence and properties of interface prototype object's "constructor" property | PASS |
| FileReader interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| FileReader interface: new FileReader() must inherit property "DONE" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "EMPTY" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "LOADING" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "abort()" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "error" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onabort" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onerror" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onload" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onloadend" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onloadstart" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onprogress" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsArrayBuffer(Blob)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsBinaryString(Blob)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsDataURL(Blob)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsText(Blob, DOMString)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readyState" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "result" with the proper type | PASS |
| FileReader interface: operation abort() | PASS |
| FileReader interface: operation readAsArrayBuffer(Blob) | PASS |
| FileReader interface: operation readAsBinaryString(Blob) | PASS |
| FileReader interface: operation readAsDataURL(Blob) | PASS |
| FileReader interface: operation readAsText(Blob, DOMString) | PASS |
| FileReader must be primary interface of new FileReader() | PASS |
| FileReaderSync interface: existence and properties of interface object | PASS |
| Partial interface URL: original interface defined | PASS |
| Partial interface URL: valid exposure set | PASS |
| Stringification of document.querySelector("#fileChooser").files | PASS |
| Stringification of new Blob(["TEST"]) | PASS |
| Stringification of new File(["myFileBits"], "myFileName") | PASS |
| Stringification of new FileReader() | PASS |
| URL interface: operation createObjectURL(Blob) | PASS |
| URL interface: operation revokeObjectURL(DOMString) | PASS |
| idl_test setup | PASS |
| /FileAPI/filelist-section/filelist.html (7/7, 100.00%, 0.95% of total) | OK |
| Check if FileList.length is 0 | PASS |
| Check if item is a instanceof Function | PASS |
| Check if item is a method of fileList | PASS |
| Check if length is fileList's attribute | PASS |
| Check if the fileList length is 0 when no file selected | PASS |
| Check if the item method returns null when no file selected | PASS |
| Check if window has a FileList property | PASS |
| /FileAPI/reading-data-section/FileReader-multiple-reads.html (6/6, 100.00%, 0.81% of total) | OK |
| test FileReader InvalidStateError exception for readAsArrayBuffer | PASS |
| test FileReader InvalidStateError exception for readAsDataURL | PASS |
| test FileReader InvalidStateError exception for readAsText | PASS |
| test FileReader InvalidStateError exception in onloadstart event for readAsArrayBuffer | PASS |
| test FileReader no InvalidStateError exception in loadend event handler for readAsArrayBuffer | PASS |
| test abort and restart in onloadstart event for readAsText | PASS |
| /FileAPI/url/sandboxed-iframe.html (38/38, 100.00%, 5.16% of total) | OK |
| Appending a path should cause XHR to fail | PASS |
| Appending a path should cause fetch to fail | PASS |
| Appending a query string should cause XHR to fail | PASS |
| Appending a query string should cause fetch to fail | PASS |
| Blob URL fragment is implemented. | FAIL |
| Blob URL parses correctly | PASS |
| Blob URL starts with "blob:" | PASS |
| Blob URL starts with "blob:" for Files | PASS |
| Blob URLs can be used in <script> tags | PASS |
| Blob URLs can be used in XHR | PASS |
| Blob URLs can be used in fetch | PASS |
| Blob URLs can be used in iframes, and are treated same origin | FAIL |
| Generated Blob URLs are unique | PASS |
| Only exact matches should revoke URLs, using XHR | PASS |
| Only exact matches should revoke URLs, using fetch | PASS |
| Origin of Blob URL matches our origin | PASS |
| Origin of Blob URL matches our origin for Files | PASS |
| Revoke blob URL after calling fetch, fetch should succeed | PASS |
| Revoke blob URL after creating Request, will fetch | FAIL |
| Revoke blob URL after open(), will fetch | FAIL |
| XHR of a revoked URL should fail | PASS |
| XHR should return Content-Type from Blob | PASS |
| XHR with a fragment should succeed | PASS |
| XHR with method "CUSTOM" should fail | PASS |
| XHR with method "DELETE" should fail | PASS |
| XHR with method "HEAD" should fail | PASS |
| XHR with method "OPTIONS" should fail | PASS |
| XHR with method "POST" should fail | PASS |
| XHR with method "PUT" should fail | PASS |
| fetch of a revoked URL should fail | PASS |
| fetch should return Content-Type from Blob | PASS |
| fetch with a fragment should succeed | PASS |
| fetch with method "CUSTOM" should fail | PASS |
| fetch with method "DELETE" should fail | PASS |
| fetch with method "HEAD" should fail | PASS |
| fetch with method "OPTIONS" should fail | PASS |
| fetch with method "POST" should fail | PASS |
| fetch with method "PUT" should fail | PASS |
| /FileAPI/url/unicode-origin.sub.html (1/1, 100.00%, 0.14% of total) | OK |
| Verify serialization of non-ascii origin in Blob URLs | PASS |
| /FileAPI/file/send-file-form-x-user-defined.tentative.html (6/6, 100.00%, 0.81% of total) | OK |
| Upload file-for-upload-in-form-ABC~‾¥≈¤・・•∙·☼★星🌟星★☼·∙•・・¤≈¥‾~XYZ.txt (Unicode) in x-user-defined form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (windows-1252) in x-user-defined form | PASS |
| Upload file-for-upload-in-form-★星★.txt (JIS X 0201 and JIS X 0208) in x-user-defined form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (Unicode) in x-user-defined form | PASS |
| Upload file-for-upload-in-form-.txt (x-user-defined) in x-user-defined form | PASS |
| Upload file-for-upload-in-form.txt (ASCII) in x-user-defined form | PASS |
| /FileAPI/url/url-in-tags-revoke.window.html (6/6, 100.00%, 0.81% of total) | TIMEOUT |
| Fetching a blob URL immediately before revoking it works in <script> tags. | PASS |
| Fetching a blob URL immediately before revoking it works in an iframe navigation. | FAIL |
| Fetching a blob URL immediately before revoking it works in an iframe. | FAIL |
| Opening a blob URL in a new window by clicking an <a> tag works immediately before revoking the URL. | TIMEOUT |
| Opening a blob URL in a new window immediately before revoking it works. | TIMEOUT |
| Opening a blob URL in a noopener about:blank window immediately before revoking it works. | TIMEOUT |
| /FileAPI/blob/Blob-slice-overflow.html (4/4, 100.00%, 0.54% of total) | OK |
| slice end is greater than blob size, relativeEnd will be min(end, size) | PASS |
| slice end is negative, relativeEnd will be max((size + end), 0) | PASS |
| slice start is greater than blob size, relativeStart will be min(start, size) | PASS |
| slice start is negative, relativeStart will be max((size + start), 0) | PASS |
| /FileAPI/file/send-file-form-iso-2022-jp.tentative.html (6/6, 100.00%, 0.81% of total) | OK |
| Upload file-for-upload-in-form-ABC~‾¥≈¤・・•∙·☼★星🌟星★☼·∙•・・¤≈¥‾~XYZ.txt (Unicode) in ISO-2022-JP form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (windows-1252) in ISO-2022-JP form | PASS |
| Upload file-for-upload-in-form-★星★.txt (JIS X 0201 and JIS X 0208) in ISO-2022-JP form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (Unicode) in ISO-2022-JP form | PASS |
| Upload file-for-upload-in-form-.txt (x-user-defined) in ISO-2022-JP form | PASS |
| Upload file-for-upload-in-form.txt (ASCII) in ISO-2022-JP form | PASS |
| /FileAPI/blob/Blob-slice.html (127/127, 100.00%, 17.23% of total) | OK |
| Invalid contentType ("te\0xt/plain") | PASS |
| Invalid contentType ("te\txt/plain") | PASS |
| Invalid contentType ("te\x1fxt/plain") | PASS |
| Invalid contentType ("text/plain") | PASS |
| Invalid contentType ("ÿ") | PASS |
| Slices | PASS |
| Slicing test (0,0). | PASS |
| Slicing test (0,1). | PASS |
| Slicing test (0,2). | PASS |
| Slicing test (0,3). | PASS |
| Slicing test (0,4). | PASS |
| Slicing test (0,5). | PASS |
| Slicing test (0,6). | PASS |
| Slicing test (0,7). | PASS |
| Slicing test (0,8). | PASS |
| Slicing test (1,0). | PASS |
| Slicing test (1,1). | PASS |
| Slicing test (1,2). | PASS |
| Slicing test (1,3). | PASS |
| Slicing test (1,4). | PASS |
| Slicing test (1,5). | PASS |
| Slicing test (1,6). | PASS |
| Slicing test (1,7). | PASS |
| Slicing test (2,0). | PASS |
| Slicing test (2,1). | PASS |
| Slicing test (2,2). | PASS |
| Slicing test (2,3). | PASS |
| Slicing test (3,0). | PASS |
| Slicing test (3,1). | PASS |
| Slicing test (3,2). | PASS |
| Slicing test (3,3). | PASS |
| Slicing test (3,4). | PASS |
| Slicing test (3,5). | PASS |
| Slicing test (4,0). | PASS |
| Slicing test (4,1). | PASS |
| Slicing test (4,2). | PASS |
| Slicing test (4,3). | PASS |
| Slicing test (4,4). | PASS |
| Slicing test (5,0). | PASS |
| Slicing test (5,1). | PASS |
| Slicing test (5,2). | PASS |
| Slicing test (5,3). | PASS |
| Slicing test (6,0). | PASS |
| Slicing test (6,1). | PASS |
| Slicing test (6,2). | PASS |
| Slicing test (7,0). | PASS |
| Slicing test (7,1). | PASS |
| Slicing test (7,2). | PASS |
| Slicing test (7,3). | PASS |
| Slicing test (8,0). | PASS |
| Slicing test (8,1). | PASS |
| Slicing test (8,2). | PASS |
| Slicing test (8,3). | PASS |
| Slicing test: slice (0,0). | PASS |
| Slicing test: slice (0,1). | PASS |
| Slicing test: slice (0,2). | PASS |
| Slicing test: slice (0,3). | PASS |
| Slicing test: slice (0,4). | PASS |
| Slicing test: slice (0,5). | PASS |
| Slicing test: slice (0,6). | PASS |
| Slicing test: slice (0,7). | PASS |
| Slicing test: slice (0,8). | PASS |
| Slicing test: slice (1,0). | PASS |
| Slicing test: slice (1,1). | PASS |
| Slicing test: slice (1,2). | PASS |
| Slicing test: slice (1,3). | PASS |
| Slicing test: slice (1,4). | PASS |
| Slicing test: slice (1,5). | PASS |
| Slicing test: slice (1,6). | PASS |
| Slicing test: slice (1,7). | PASS |
| Slicing test: slice (2,0). | PASS |
| Slicing test: slice (2,1). | PASS |
| Slicing test: slice (2,2). | PASS |
| Slicing test: slice (2,3). | PASS |
| Slicing test: slice (3,0). | PASS |
| Slicing test: slice (3,1). | PASS |
| Slicing test: slice (3,2). | PASS |
| Slicing test: slice (3,3). | PASS |
| Slicing test: slice (3,4). | PASS |
| Slicing test: slice (3,5). | PASS |
| Slicing test: slice (4,0). | PASS |
| Slicing test: slice (4,1). | PASS |
| Slicing test: slice (4,2). | PASS |
| Slicing test: slice (4,3). | PASS |
| Slicing test: slice (4,4). | PASS |
| Slicing test: slice (5,0). | PASS |
| Slicing test: slice (5,1). | PASS |
| Slicing test: slice (5,2). | PASS |
| Slicing test: slice (5,3). | PASS |
| Slicing test: slice (6,0). | PASS |
| Slicing test: slice (6,1). | PASS |
| Slicing test: slice (6,2). | PASS |
| Slicing test: slice (7,0). | PASS |
| Slicing test: slice (7,1). | PASS |
| Slicing test: slice (7,2). | PASS |
| Slicing test: slice (7,3). | PASS |
| Slicing test: slice (8,0). | PASS |
| Slicing test: slice (8,1). | PASS |
| Slicing test: slice (8,2). | PASS |
| Slicing test: slice (8,3). | PASS |
| Valid contentType ("TEXT/PLAIN") | PASS |
| Valid contentType ("te xt/plain") | PASS |
| Valid contentType ("te(xt/plain") | PASS |
| Valid contentType ("te)xt/plain") | PASS |
| Valid contentType ("te,xt/plain") | PASS |
| Valid contentType ("te/xt/plain") | PASS |
| Valid contentType ("te:xt/plain") | PASS |
| Valid contentType ("te;xt/plain") | PASS |
| Valid contentType ("te<xt/plain") | PASS |
| Valid contentType ("te=xt/plain") | PASS |
| Valid contentType ("te>xt/plain") | PASS |
| Valid contentType ("te?xt/plain") | PASS |
| Valid contentType ("te@xt/plain") | PASS |
| Valid contentType ("te[xt/plain") | PASS |
| Valid contentType ("te\"xt/plain") | PASS |
| Valid contentType ("te\\xt/plain") | PASS |
| Valid contentType ("te]xt/plain") | PASS |
| Valid contentType ("text/plain;charset = UTF-8") | PASS |
| Valid contentType ("text/plain;charset=UTF-8") | PASS |
| Valid contentType ("te{xt/plain") | PASS |
| Valid contentType ("te}xt/plain") | PASS |
| blob1. | PASS |
| blob2. | PASS |
| no type Blob slice | PASS |
| no-argument Blob slice | PASS |
| null type Blob slice | PASS |
| undefined type Blob slice | PASS |
| /FileAPI/file/Worker-read-file-constructor.worker.html (1/1, 100.00%, 0.14% of total) | OK |
| FileReader in Worker | PASS |
| /FileAPI/historical.https.html (13/13, 100.00%, 1.76% of total) | OK |
| "FileError" should not be supported | PASS |
| "FileException" should not be supported | PASS |
| "FileHandle" should not be supported | PASS |
| "FileReaderSync" should not be supported in service workers | PASS |
| "FileRequest" should not be supported | PASS |
| "MutableFile" should not be supported | PASS |
| "toNativeLineEndings" should not be supported | PASS |
| Blob should not support slice prefixed | PASS |
| Blob.close() should not be supported | PASS |
| BlobBuilder should not be supported. | PASS |
| File's lastModifiedDate should not be supported | FAIL |
| Service worker test setup | PASS |
| createFor method should not be supported | PASS |
| /FileAPI/file/send-file-form.html (1/1, 100.00%, 0.14% of total) | OK |
| Upload file-for-upload-in-form.txt (ASCII) in UTF-8 form | PASS |
| /FileAPI/url/url-with-xhr.any.html (14/14, 100.00%, 1.90% of total) | OK |
| Appending a path should cause XHR to fail | PASS |
| Appending a query string should cause XHR to fail | PASS |
| Blob URLs can be used in XHR | PASS |
| Only exact matches should revoke URLs, using XHR | PASS |
| Revoke blob URL after open(), will fetch | FAIL |
| XHR of a revoked URL should fail | PASS |
| XHR should return Content-Type from Blob | PASS |
| XHR with a fragment should succeed | PASS |
| XHR with method "CUSTOM" should fail | PASS |
| XHR with method "DELETE" should fail | PASS |
| XHR with method "HEAD" should fail | PASS |
| XHR with method "OPTIONS" should fail | PASS |
| XHR with method "POST" should fail | PASS |
| XHR with method "PUT" should fail | PASS |
| /FileAPI/blob/Blob-constructor-endings.html (45/45, 100.00%, 6.11% of total) | OK |
| CR/LF in adjacent input strings | PASS |
| Exception propagation from options | PASS |
| Input CR with endings 'native' | PASS |
| Input CR with endings 'transparent' | PASS |
| Input CR with endings unspecified | PASS |
| Input CRCR with endings 'native' | PASS |
| Input CRCR with endings 'transparent' | PASS |
| Input CRCR with endings unspecified | PASS |
| Input CRCRLF with endings 'native' | PASS |
| Input CRCRLF with endings 'transparent' | PASS |
| Input CRCRLF with endings unspecified | PASS |
| Input CRLF with endings 'native' | PASS |
| Input CRLF with endings 'transparent' | PASS |
| Input CRLF with endings unspecified | PASS |
| Input CRLFCR with endings 'native' | PASS |
| Input CRLFCR with endings 'transparent' | PASS |
| Input CRLFCR with endings unspecified | PASS |
| Input CRLFCRLF with endings 'native' | PASS |
| Input CRLFCRLF with endings 'transparent' | PASS |
| Input CRLFCRLF with endings unspecified | PASS |
| Input CRLFLF with endings 'native' | PASS |
| Input CRLFLF with endings 'transparent' | PASS |
| Input CRLFLF with endings unspecified | PASS |
| Input LF with endings 'native' | PASS |
| Input LF with endings 'transparent' | PASS |
| Input LF with endings unspecified | PASS |
| Input LFCR with endings 'native' | PASS |
| Input LFCR with endings 'transparent' | PASS |
| Input LFCR with endings unspecified | PASS |
| Input LFCRLFCR with endings 'native' | PASS |
| Input LFCRLFCR with endings 'transparent' | PASS |
| Input LFCRLFCR with endings unspecified | PASS |
| Input LFLF with endings 'native' | PASS |
| Input LFLF with endings 'transparent' | PASS |
| Input LFLF with endings unspecified | PASS |
| Invalid "endings" value: "" | PASS |
| Invalid "endings" value: "NATIVE" | PASS |
| Invalid "endings" value: "Transparent" | PASS |
| Invalid "endings" value: "invalidEnumValue" | PASS |
| Invalid "endings" value: 0 | PASS |
| Invalid "endings" value: null | PASS |
| Invalid "endings" value: {} | PASS |
| The "endings" options property is used | PASS |
| Valid "endings" value: "native" | PASS |
| Valid "endings" value: "transparent" | PASS |
| /FileAPI/file/send-file-form-utf-8.html (6/6, 100.00%, 0.81% of total) | OK |
| Upload file-for-upload-in-form-ABC~‾¥≈¤・・•∙·☼★星🌟星★☼·∙•・・¤≈¥‾~XYZ.txt (Unicode) in UTF-8 form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (windows-1252) in UTF-8 form | PASS |
| Upload file-for-upload-in-form-★星★.txt (JIS X 0201 and JIS X 0208) in UTF-8 form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (Unicode) in UTF-8 form | PASS |
| Upload file-for-upload-in-form-.txt (x-user-defined) in UTF-8 form | PASS |
| Upload file-for-upload-in-form.txt (ASCII) in UTF-8 form | PASS |
| /FileAPI/reading-data-section/filereader_readAsBinaryString.html (1/1, 100.00%, 0.14% of total) | OK |
| FileAPI Test: filereader_readAsBinaryString | PASS |
| /FileAPI/reading-data-section/filereader_readystate.html (1/1, 100.00%, 0.14% of total) | OK |
| FileAPI Test: filereader_readystate | PASS |
| /FileAPI/reading-data-section/filereader_readAsArrayBuffer.html (1/1, 100.00%, 0.14% of total) | OK |
| FileAPI Test: filereader_readAsArrayBuffer | PASS |
| /FileAPI/reading-data-section/filereader_abort.html (2/2, 100.00%, 0.27% of total) | OK |
| Aborting after read | PASS |
| Aborting before read | PASS |
| /FileAPI/file/File-constructor-endings.html (45/45, 100.00%, 6.11% of total) | OK |
| CR/LF in adjacent input strings | PASS |
| Exception propagation from options | PASS |
| Input CR with endings 'native' | PASS |
| Input CR with endings 'transparent' | PASS |
| Input CR with endings unspecified | PASS |
| Input CRCR with endings 'native' | PASS |
| Input CRCR with endings 'transparent' | PASS |
| Input CRCR with endings unspecified | PASS |
| Input CRCRLF with endings 'native' | PASS |
| Input CRCRLF with endings 'transparent' | PASS |
| Input CRCRLF with endings unspecified | PASS |
| Input CRLF with endings 'native' | PASS |
| Input CRLF with endings 'transparent' | PASS |
| Input CRLF with endings unspecified | PASS |
| Input CRLFCR with endings 'native' | PASS |
| Input CRLFCR with endings 'transparent' | PASS |
| Input CRLFCR with endings unspecified | PASS |
| Input CRLFCRLF with endings 'native' | PASS |
| Input CRLFCRLF with endings 'transparent' | PASS |
| Input CRLFCRLF with endings unspecified | PASS |
| Input CRLFLF with endings 'native' | PASS |
| Input CRLFLF with endings 'transparent' | PASS |
| Input CRLFLF with endings unspecified | PASS |
| Input LF with endings 'native' | PASS |
| Input LF with endings 'transparent' | PASS |
| Input LF with endings unspecified | PASS |
| Input LFCR with endings 'native' | PASS |
| Input LFCR with endings 'transparent' | PASS |
| Input LFCR with endings unspecified | PASS |
| Input LFCRLFCR with endings 'native' | PASS |
| Input LFCRLFCR with endings 'transparent' | PASS |
| Input LFCRLFCR with endings unspecified | PASS |
| Input LFLF with endings 'native' | PASS |
| Input LFLF with endings 'transparent' | PASS |
| Input LFLF with endings unspecified | PASS |
| Invalid "endings" value: "" | PASS |
| Invalid "endings" value: "NATIVE" | PASS |
| Invalid "endings" value: "Transparent" | PASS |
| Invalid "endings" value: "invalidEnumValue" | PASS |
| Invalid "endings" value: 0 | PASS |
| Invalid "endings" value: null | PASS |
| Invalid "endings" value: {} | PASS |
| The "endings" options property is used | PASS |
| Valid "endings" value: "native" | PASS |
| Valid "endings" value: "transparent" | PASS |
| /FileAPI/url/url-reload.window.html (2/2, 100.00%, 0.27% of total) | OK |
| Reloading a blob URL succeeds even if the URL was revoked. | FAIL |
| Reloading a blob URL succeeds. | PASS |
| /FileAPI/reading-data-section/filereader_error.html (1/1, 100.00%, 0.14% of total) | OK |
| FileAPI Test: filereader_error | PASS |
| /FileAPI/FileReader/Progress_event_bubbles_cancelable.html (1/1, 100.00%, 0.14% of total) | OK |
| Check the values of bubbles and cancelable are false when the progress event is dispatched | PASS |
| /FileAPI/FileReader/workers.html (1/1, 100.00%, 0.14% of total) | OK |
| FileReader created after a worker self.close() | PASS |
| /FileAPI/idlharness.worker.html (113/113, 100.00%, 15.33% of total) | OK |
| Blob interface object length | PASS |
| Blob interface object name | PASS |
| Blob interface: attribute size | PASS |
| Blob interface: attribute type | PASS |
| Blob interface: calling slice(long long, long long, DOMString) on new Blob(["TEST"]) with too few arguments must throw TypeError | PASS |
| Blob interface: calling slice(long long, long long, DOMString) on new File(["myFileBits"], "myFileName") with too few arguments must throw TypeError | PASS |
| Blob interface: existence and properties of interface object | PASS |
| Blob interface: existence and properties of interface prototype object | PASS |
| Blob interface: existence and properties of interface prototype object's "constructor" property | PASS |
| Blob interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| Blob interface: new Blob(["TEST"]) must inherit property "size" with the proper type | PASS |
| Blob interface: new Blob(["TEST"]) must inherit property "slice(long long, long long, DOMString)" with the proper type | PASS |
| Blob interface: new Blob(["TEST"]) must inherit property "type" with the proper type | PASS |
| Blob interface: new File(["myFileBits"], "myFileName") must inherit property "size" with the proper type | PASS |
| Blob interface: new File(["myFileBits"], "myFileName") must inherit property "slice(long long, long long, DOMString)" with the proper type | PASS |
| Blob interface: new File(["myFileBits"], "myFileName") must inherit property "type" with the proper type | PASS |
| Blob interface: operation slice(long long, long long, DOMString) | PASS |
| Blob must be primary interface of new Blob(["TEST"]) | PASS |
| File interface object length | PASS |
| File interface object name | PASS |
| File interface: attribute lastModified | PASS |
| File interface: attribute name | PASS |
| File interface: existence and properties of interface object | PASS |
| File interface: existence and properties of interface prototype object | PASS |
| File interface: existence and properties of interface prototype object's "constructor" property | PASS |
| File interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| File interface: new File(["myFileBits"], "myFileName") must inherit property "lastModified" with the proper type | PASS |
| File interface: new File(["myFileBits"], "myFileName") must inherit property "name" with the proper type | PASS |
| File must be primary interface of new File(["myFileBits"], "myFileName") | PASS |
| FileList interface object length | PASS |
| FileList interface object name | PASS |
| FileList interface: attribute length | PASS |
| FileList interface: existence and properties of interface object | PASS |
| FileList interface: existence and properties of interface prototype object | PASS |
| FileList interface: existence and properties of interface prototype object's "constructor" property | PASS |
| FileList interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| FileList interface: operation item(unsigned long) | PASS |
| FileReader interface object length | PASS |
| FileReader interface object name | PASS |
| FileReader interface: attribute error | PASS |
| FileReader interface: attribute onabort | PASS |
| FileReader interface: attribute onerror | PASS |
| FileReader interface: attribute onload | PASS |
| FileReader interface: attribute onloadend | PASS |
| FileReader interface: attribute onloadstart | PASS |
| FileReader interface: attribute onprogress | PASS |
| FileReader interface: attribute readyState | PASS |
| FileReader interface: attribute result | PASS |
| FileReader interface: calling readAsArrayBuffer(Blob) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: calling readAsBinaryString(Blob) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: calling readAsDataURL(Blob) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: calling readAsText(Blob, DOMString) on new FileReader() with too few arguments must throw TypeError | PASS |
| FileReader interface: constant DONE on interface object | PASS |
| FileReader interface: constant DONE on interface prototype object | PASS |
| FileReader interface: constant EMPTY on interface object | PASS |
| FileReader interface: constant EMPTY on interface prototype object | PASS |
| FileReader interface: constant LOADING on interface object | PASS |
| FileReader interface: constant LOADING on interface prototype object | PASS |
| FileReader interface: existence and properties of interface object | PASS |
| FileReader interface: existence and properties of interface prototype object | PASS |
| FileReader interface: existence and properties of interface prototype object's "constructor" property | PASS |
| FileReader interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| FileReader interface: new FileReader() must inherit property "DONE" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "EMPTY" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "LOADING" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "abort()" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "error" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onabort" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onerror" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onload" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onloadend" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onloadstart" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "onprogress" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsArrayBuffer(Blob)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsBinaryString(Blob)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsDataURL(Blob)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readAsText(Blob, DOMString)" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "readyState" with the proper type | PASS |
| FileReader interface: new FileReader() must inherit property "result" with the proper type | PASS |
| FileReader interface: operation abort() | PASS |
| FileReader interface: operation readAsArrayBuffer(Blob) | PASS |
| FileReader interface: operation readAsBinaryString(Blob) | PASS |
| FileReader interface: operation readAsDataURL(Blob) | PASS |
| FileReader interface: operation readAsText(Blob, DOMString) | PASS |
| FileReader must be primary interface of new FileReader() | PASS |
| FileReaderSync interface object length | PASS |
| FileReaderSync interface object name | PASS |
| FileReaderSync interface: calling readAsArrayBuffer(Blob) on new FileReaderSync() with too few arguments must throw TypeError | PASS |
| FileReaderSync interface: calling readAsBinaryString(Blob) on new FileReaderSync() with too few arguments must throw TypeError | PASS |
| FileReaderSync interface: calling readAsDataURL(Blob) on new FileReaderSync() with too few arguments must throw TypeError | PASS |
| FileReaderSync interface: calling readAsText(Blob, DOMString) on new FileReaderSync() with too few arguments must throw TypeError | PASS |
| FileReaderSync interface: existence and properties of interface object | PASS |
| FileReaderSync interface: existence and properties of interface prototype object | PASS |
| FileReaderSync interface: existence and properties of interface prototype object's "constructor" property | PASS |
| FileReaderSync interface: existence and properties of interface prototype object's @@unscopables property | PASS |
| FileReaderSync interface: new FileReaderSync() must inherit property "readAsArrayBuffer(Blob)" with the proper type | PASS |
| FileReaderSync interface: new FileReaderSync() must inherit property "readAsBinaryString(Blob)" with the proper type | PASS |
| FileReaderSync interface: new FileReaderSync() must inherit property "readAsDataURL(Blob)" with the proper type | PASS |
| FileReaderSync interface: new FileReaderSync() must inherit property "readAsText(Blob, DOMString)" with the proper type | PASS |
| FileReaderSync interface: operation readAsArrayBuffer(Blob) | PASS |
| FileReaderSync interface: operation readAsBinaryString(Blob) | PASS |
| FileReaderSync interface: operation readAsDataURL(Blob) | PASS |
| FileReaderSync interface: operation readAsText(Blob, DOMString) | PASS |
| FileReaderSync must be primary interface of new FileReaderSync() | PASS |
| Partial interface URL: original interface defined | PASS |
| Partial interface URL: valid exposure set | PASS |
| Stringification of new Blob(["TEST"]) | PASS |
| Stringification of new File(["myFileBits"], "myFileName") | PASS |
| Stringification of new FileReader() | PASS |
| Stringification of new FileReaderSync() | PASS |
| URL interface: operation createObjectURL(Blob) | PASS |
| URL interface: operation revokeObjectURL(DOMString) | PASS |
| idl_test setup | PASS |
| /FileAPI/reading-data-section/Determining-Encoding.html (6/6, 100.00%, 0.81% of total) | OK |
| Blob Determing Encoding with UTF-16BE BOM | PASS |
| Blob Determing Encoding with UTF-16LE BOM | PASS |
| Blob Determing Encoding with UTF-8 BOM | PASS |
| Blob Determing Encoding with encoding argument | PASS |
| Blob Determing Encoding with type attribute | PASS |
| Blob Determing Encoding without anything implying charset. | PASS |
| /FileAPI/reading-data-section/filereader_readAsText.html (2/2, 100.00%, 0.27% of total) | OK |
| readAsText should correctly read UTF-16. | PASS |
| readAsText should correctly read UTF-8. | PASS |
| /FileAPI/file/send-file-form-windows-1252.tentative.html (6/6, 100.00%, 0.81% of total) | OK |
| Upload file-for-upload-in-form-ABC~‾¥≈¤・・•∙·☼★星🌟星★☼·∙•・・¤≈¥‾~XYZ.txt (Unicode) in windows-1252 form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (windows-1252) in windows-1252 form | PASS |
| Upload file-for-upload-in-form-★星★.txt (JIS X 0201 and JIS X 0208) in windows-1252 form | PASS |
| Upload file-for-upload-in-form-☺😂.txt (Unicode) in windows-1252 form | PASS |
| Upload file-for-upload-in-form-.txt (x-user-defined) in windows-1252 form | PASS |
| Upload file-for-upload-in-form.txt (ASCII) in windows-1252 form | PASS |
| /FileAPI/FileReaderSync.worker.html (9/9, 100.00%, 1.22% of total) | OK |
| Interface | PASS |
| readAsArrayBuffer | PASS |
| readAsArrayBuffer with empty blob | PASS |
| readAsBinaryString | PASS |
| readAsBinaryString with empty blob | PASS |
| readAsDataURL | PASS |
| readAsDataURL with empty blob | PASS |
| readAsText | PASS |
| readAsText with empty blob | PASS |
| /FileAPI/blob/Blob-in-worker.worker.html (1/1, 100.00%, 0.14% of total) | OK |
| Create Blob in Worker | PASS |
| /FileAPI/file/File-constructor.html (51/51, 100.00%, 6.92% of total) | OK |
| Array in fileBits | PASS |
| ArrayBuffer fileBits | PASS |
| Bits argument: object that throws | PASS |
| Blob fileBits | PASS |
| Custom @@iterator | PASS |
| DOMString fileBits | PASS |
| Empty Blob fileBits | PASS |
| Empty File fileBits | PASS |
| File fileBits | PASS |
| File interface object exists | PASS |
| HTMLBodyElement in fileBits | PASS |
| Invalid bits argument: "hello" | PASS |
| Invalid bits argument: 0 | PASS |
| Invalid bits argument: null | PASS |
| Invalid property bag: "abc" | PASS |
| Invalid property bag: 123 | PASS |
| Invalid property bag: 123.4 | PASS |
| Invalid property bag: true | PASS |
| Misusing name | PASS |
| Number in fileBits | PASS |
| Object in fileBits | PASS |
| Object with toString in fileBits | PASS |
| Property bag propagates exceptions | PASS |
| Required arguments | PASS |
| String object fileBits | PASS |
| Typed array fileBits | PASS |
| Unicode DOMString fileBits | PASS |
| Unknown properties are ignored | PASS |
| Unusual but valid property bag: /regex/ | PASS |
| Unusual but valid property bag: 1,2,3 | PASS |
| Unusual but valid property bag: function() {} | PASS |
| Unusual but valid property bag: null | PASS |
| Unusual but valid property bag: undefined | PASS |
| Using empty string fileName | PASS |
| Using fileName | PASS |
| Using lastModified | PASS |
| Using null fileName | PASS |
| Using number fileName | PASS |
| Using object fileName | PASS |
| Using special character in fileName | FAIL |
| Using type in File constructor: TEXT/PLAIN | PASS |
| Using type in File constructor: ascii/nonprintable | PASS |
| Using type in File constructor: ascii/nonprintable | PASS |
| Using type in File constructor: nonasciiî | PASS |
| Using type in File constructor: nonasciiሴ | PASS |
| Using type in File constructor: nonparsable | PASS |
| Using type in File constructor: text/plain | PASS |
| Using type in File constructor: text/plain;charset=UTF-8 | PASS |
| Using type in File constructor: 𝓽𝓮𝔁𝓽/𝔭𝔩𝔞𝔦𝔫 | PASS |
| Various fileBits | PASS |
| empty fileBits | PASS |
| /FileAPI/url/url-in-tags.window.html (3/3, 100.00%, 0.41% of total) | TIMEOUT |
| Blob URL fragment is implemented. | TIMEOUT |
| Blob URLs can be used in <script> tags | PASS |
| Blob URLs can be used in iframes, and are treated same origin | PASS |