Update web-platform-tests to revision 12d3e15e5ecae695e1216c358d613705fbff6b68

This commit is contained in:
Ms2ger 2015-07-27 13:50:32 +02:00
parent 78455ec033
commit 5b2ca4d132
424 changed files with 4377 additions and 8656 deletions

View file

@ -69,3 +69,6 @@
[Array with mixed types] [Array with mixed types]
expected: FAIL expected: FAIL
[no-argument Blob constructor without 'new']
expected: FAIL

View file

@ -0,0 +1,137 @@
[idlharness.worker]
type: testharness
[URL interface: operation createObjectURL(Blob)]
expected: FAIL
[URL interface: operation createFor(Blob)]
expected: FAIL
[URL interface: operation revokeObjectURL(DOMString)]
expected: FAIL
[Blob interface: attribute isClosed]
expected: FAIL
[Blob interface: operation close()]
expected: FAIL
[Blob interface: new Blob(["TEST"\]) must inherit property "isClosed" with the proper type (2)]
expected: FAIL
[Blob interface: new Blob(["TEST"\]) must inherit property "close" with the proper type (4)]
expected: FAIL
[File interface: existence and properties of interface object]
expected: FAIL
[File interface object length]
expected: FAIL
[File interface: attribute lastModified]
expected: FAIL
[File must be primary interface of new File(["myFileBits"\], "myFileName")]
expected: FAIL
[Stringification of new File(["myFileBits"\], "myFileName")]
expected: FAIL
[File interface: new File(["myFileBits"\], "myFileName") must inherit property "name" with the proper type (0)]
expected: FAIL
[File interface: new File(["myFileBits"\], "myFileName") must inherit property "lastModified" with the proper type (1)]
expected: FAIL
[Blob interface: new File(["myFileBits"\], "myFileName") must inherit property "size" with the proper type (0)]
expected: FAIL
[Blob interface: new File(["myFileBits"\], "myFileName") must inherit property "type" with the proper type (1)]
expected: FAIL
[Blob interface: new File(["myFileBits"\], "myFileName") must inherit property "isClosed" with the proper type (2)]
expected: FAIL
[Blob interface: new File(["myFileBits"\], "myFileName") must inherit property "slice" with the proper type (3)]
expected: FAIL
[Blob interface: calling slice(long long,long long,DOMString) on new File(["myFileBits"\], "myFileName") with too few arguments must throw TypeError]
expected: FAIL
[Blob interface: new File(["myFileBits"\], "myFileName") must inherit property "close" with the proper type (4)]
expected: FAIL
[FileList interface: existence and properties of interface object]
expected: FAIL
[FileList interface object length]
expected: FAIL
[FileList interface: existence and properties of interface prototype object]
expected: FAIL
[FileList interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[FileList interface: operation item(unsigned long)]
expected: FAIL
[FileList interface: attribute length]
expected: FAIL
[FileReader interface: existence and properties of interface object]
expected: FAIL
[FileReader interface: operation readAsArrayBuffer(Blob)]
expected: FAIL
[FileReader interface: new FileReader() must inherit property "readAsArrayBuffer" with the proper type (0)]
expected: FAIL
[FileReader interface: calling readAsArrayBuffer(Blob) on new FileReader() with too few arguments must throw TypeError]
expected: FAIL
[FileReaderSync interface: existence and properties of interface object]
expected: FAIL
[FileReaderSync interface object length]
expected: FAIL
[FileReaderSync interface: existence and properties of interface prototype object]
expected: FAIL
[FileReaderSync interface: existence and properties of interface prototype object's "constructor" property]
expected: FAIL
[FileReaderSync interface: operation readAsArrayBuffer(Blob)]
expected: FAIL
[FileReaderSync interface: operation readAsText(Blob,DOMString)]
expected: FAIL
[FileReaderSync interface: operation readAsDataURL(Blob)]
expected: FAIL
[FileReaderSync must be primary interface of new FileReaderSync()]
expected: FAIL
[Stringification of new FileReaderSync()]
expected: FAIL
[FileReaderSync interface: new FileReaderSync() must inherit property "readAsArrayBuffer" with the proper type (0)]
expected: FAIL
[FileReaderSync interface: calling readAsArrayBuffer(Blob) on new FileReaderSync() with too few arguments must throw TypeError]
expected: FAIL
[FileReaderSync interface: new FileReaderSync() must inherit property "readAsText" with the proper type (1)]
expected: FAIL
[FileReaderSync interface: calling readAsText(Blob,DOMString) on new FileReaderSync() with too few arguments must throw TypeError]
expected: FAIL
[FileReaderSync interface: new FileReaderSync() must inherit property "readAsDataURL" with the proper type (2)]
expected: FAIL
[FileReaderSync interface: calling readAsDataURL(Blob) on new FileReaderSync() with too few arguments must throw TypeError]
expected: FAIL

View file

@ -746,12 +746,12 @@
"url": "/mediacapture-streams/stream-api/mediastream/mediastream-id-manual.html" "url": "/mediacapture-streams/stream-api/mediastream/mediastream-id-manual.html"
}, },
{ {
"path": "notifications/Notification-requestPermission-denied-manual.html", "path": "notifications/body-basic-manual.html",
"url": "/notifications/Notification-requestPermission-denied-manual.html" "url": "/notifications/body-basic-manual.html"
}, },
{ {
"path": "notifications/Notification-requestPermission-granted-manual.html", "path": "notifications/body-empty-manual.html",
"url": "/notifications/Notification-requestPermission-granted-manual.html" "url": "/notifications/body-empty-manual.html"
}, },
{ {
"path": "notifications/event-onclick-manual.html", "path": "notifications/event-onclick-manual.html",
@ -766,44 +766,28 @@
"url": "/notifications/event-onerror-denied-manual.html" "url": "/notifications/event-onerror-denied-manual.html"
}, },
{ {
"path": "notifications/notification-body-basic-manual.html", "path": "notifications/icon-basic-manual.html",
"url": "/notifications/notification-body-basic-manual.html" "url": "/notifications/icon-basic-manual.html"
}, },
{ {
"path": "notifications/notification-body-empty-manual.html", "path": "notifications/icon-empty-manual.html",
"url": "/notifications/notification-body-empty-manual.html" "url": "/notifications/icon-empty-manual.html"
}, },
{ {
"path": "notifications/notification-close-manual.html", "path": "notifications/requestPermission-denied-manual.html",
"url": "/notifications/notification-close-manual.html" "url": "/notifications/requestPermission-denied-manual.html"
}, },
{ {
"path": "notifications/notification-dir-auto-manual.html", "path": "notifications/requestPermission-granted-manual.html",
"url": "/notifications/notification-dir-auto-manual.html" "url": "/notifications/requestPermission-granted-manual.html"
}, },
{ {
"path": "notifications/notification-dir-ltr-manual.html", "path": "notifications/tag-different-manual.html",
"url": "/notifications/notification-dir-ltr-manual.html" "url": "/notifications/tag-different-manual.html"
}, },
{ {
"path": "notifications/notification-dir-rtl-manual.html", "path": "notifications/tag-same-manual.html",
"url": "/notifications/notification-dir-rtl-manual.html" "url": "/notifications/tag-same-manual.html"
},
{
"path": "notifications/notification-icon-basic-manual.html",
"url": "/notifications/notification-icon-basic-manual.html"
},
{
"path": "notifications/notification-icon-empty-manual.html",
"url": "/notifications/notification-icon-empty-manual.html"
},
{
"path": "notifications/notification-tag-different-manual.html",
"url": "/notifications/notification-tag-different-manual.html"
},
{
"path": "notifications/notification-tag-same-manual.html",
"url": "/notifications/notification-tag-same-manual.html"
}, },
{ {
"path": "page-visibility/test_minimize-manual.html", "path": "page-visibility/test_minimize-manual.html",
@ -4275,6 +4259,16 @@
], ],
"url": "/html/rendering/non-replaced-elements/tables/table-width-150percent.html" "url": "/html/rendering/non-replaced-elements/tables/table-width-150percent.html"
}, },
{
"path": "html/rendering/non-replaced-elements/the-fieldset-element-0/min-width-not-important.html",
"references": [
[
"/html/rendering/non-replaced-elements/the-fieldset-element-0/ref.html",
"=="
]
],
"url": "/html/rendering/non-replaced-elements/the-fieldset-element-0/min-width-not-important.html"
},
{ {
"path": "html/rendering/non-replaced-elements/the-page/body_text_00ffff.xhtml", "path": "html/rendering/non-replaced-elements/the-page/body_text_00ffff.xhtml",
"references": [ "references": [
@ -10473,6 +10467,10 @@
"path": "FileAPI/idlharness.html", "path": "FileAPI/idlharness.html",
"url": "/FileAPI/idlharness.html" "url": "/FileAPI/idlharness.html"
}, },
{
"path": "FileAPI/idlharness.worker.js",
"url": "/FileAPI/idlharness.worker"
},
{ {
"path": "FileAPI/reading-data-section/Determining-Encoding.html", "path": "FileAPI/reading-data-section/Determining-Encoding.html",
"url": "/FileAPI/reading-data-section/Determining-Encoding.html" "url": "/FileAPI/reading-data-section/Determining-Encoding.html"
@ -16930,8 +16928,12 @@
"url": "/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html" "url": "/html/semantics/forms/the-fieldset-element/HTMLFieldSetElement.html"
}, },
{ {
"path": "html/semantics/forms/the-fieldset-element/disabled.html", "path": "html/semantics/forms/the-fieldset-element/disabled-001.html",
"url": "/html/semantics/forms/the-fieldset-element/disabled.html" "url": "/html/semantics/forms/the-fieldset-element/disabled-001.html"
},
{
"path": "html/semantics/forms/the-fieldset-element/disabled-002.xhtml",
"url": "/html/semantics/forms/the-fieldset-element/disabled-002.xhtml"
}, },
{ {
"path": "html/semantics/forms/the-form-element/form-autocomplete.html", "path": "html/semantics/forms/the-form-element/form-autocomplete.html",
@ -17097,6 +17099,10 @@
"path": "html/semantics/forms/the-label-element/labelable-elements.html", "path": "html/semantics/forms/the-label-element/labelable-elements.html",
"url": "/html/semantics/forms/the-label-element/labelable-elements.html" "url": "/html/semantics/forms/the-label-element/labelable-elements.html"
}, },
{
"path": "html/semantics/forms/the-legend-element/legend-form.html",
"url": "/html/semantics/forms/the-legend-element/legend-form.html"
},
{ {
"path": "html/semantics/forms/the-meter-element/meter.html", "path": "html/semantics/forms/the-meter-element/meter.html",
"url": "/html/semantics/forms/the-meter-element/meter.html" "url": "/html/semantics/forms/the-meter-element/meter.html"
@ -18305,6 +18311,14 @@
"path": "mixed-content/allowed/http-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html", "path": "mixed-content/allowed/http-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html",
"url": "/mixed-content/allowed/http-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html" "url": "/mixed-content/allowed/http-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html"
}, },
{
"path": "mixed-content/allowed/http-csp/same-host-wss/websocket-request/top-level/keep-scheme-redirect/websocket-allowed.https.html",
"url": "/mixed-content/allowed/http-csp/same-host-wss/websocket-request/top-level/keep-scheme-redirect/websocket-allowed.https.html"
},
{
"path": "mixed-content/allowed/http-csp/same-host-wss/websocket-request/top-level/no-redirect/websocket-allowed.https.html",
"url": "/mixed-content/allowed/http-csp/same-host-wss/websocket-request/top-level/no-redirect/websocket-allowed.https.html"
},
{ {
"path": "mixed-content/allowed/meta-csp/same-host-https/audio-tag/top-level/no-redirect/allowed.https.html", "path": "mixed-content/allowed/meta-csp/same-host-https/audio-tag/top-level/no-redirect/allowed.https.html",
"url": "/mixed-content/allowed/meta-csp/same-host-https/audio-tag/top-level/no-redirect/allowed.https.html" "url": "/mixed-content/allowed/meta-csp/same-host-https/audio-tag/top-level/no-redirect/allowed.https.html"
@ -18357,6 +18371,10 @@
"path": "mixed-content/allowed/meta-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html", "path": "mixed-content/allowed/meta-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html",
"url": "/mixed-content/allowed/meta-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html" "url": "/mixed-content/allowed/meta-csp/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html"
}, },
{
"path": "mixed-content/allowed/meta-csp/same-host-wss/websocket-request/top-level/no-redirect/websocket-allowed.https.html",
"url": "/mixed-content/allowed/meta-csp/same-host-wss/websocket-request/top-level/no-redirect/websocket-allowed.https.html"
},
{ {
"path": "mixed-content/allowed/no-opt-in/same-host-https/audio-tag/top-level/keep-scheme-redirect/allowed.https.html", "path": "mixed-content/allowed/no-opt-in/same-host-https/audio-tag/top-level/keep-scheme-redirect/allowed.https.html",
"url": "/mixed-content/allowed/no-opt-in/same-host-https/audio-tag/top-level/keep-scheme-redirect/allowed.https.html" "url": "/mixed-content/allowed/no-opt-in/same-host-https/audio-tag/top-level/keep-scheme-redirect/allowed.https.html"
@ -18461,6 +18479,14 @@
"path": "mixed-content/allowed/no-opt-in/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html", "path": "mixed-content/allowed/no-opt-in/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html",
"url": "/mixed-content/allowed/no-opt-in/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html" "url": "/mixed-content/allowed/no-opt-in/same-host-https/xhr-request/top-level/no-redirect/allowed.https.html"
}, },
{
"path": "mixed-content/allowed/no-opt-in/same-host-wss/websocket-request/top-level/keep-scheme-redirect/websocket-allowed.https.html",
"url": "/mixed-content/allowed/no-opt-in/same-host-wss/websocket-request/top-level/keep-scheme-redirect/websocket-allowed.https.html"
},
{
"path": "mixed-content/allowed/no-opt-in/same-host-wss/websocket-request/top-level/no-redirect/websocket-allowed.https.html",
"url": "/mixed-content/allowed/no-opt-in/same-host-wss/websocket-request/top-level/no-redirect/websocket-allowed.https.html"
},
{ {
"path": "mixed-content/blockable/http-csp/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/http-csp/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/http-csp/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html"
@ -18569,6 +18595,18 @@
"path": "mixed-content/blockable/http-csp/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/http-csp/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/http-csp/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html"
}, },
{
"path": "mixed-content/blockable/http-csp/cross-origin-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/cross-origin-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/http-csp/cross-origin-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/cross-origin-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/http-csp/cross-origin-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/cross-origin-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html"
},
{ {
"path": "mixed-content/blockable/http-csp/same-host-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/http-csp/same-host-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/same-host-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/http-csp/same-host-http/fetch-request/top-level/keep-scheme-redirect/opt-in-blocks.https.html"
@ -18677,6 +18715,18 @@
"path": "mixed-content/blockable/http-csp/same-host-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/http-csp/same-host-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/same-host-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/http-csp/same-host-http/xhr-request/top-level/swap-scheme-redirect/opt-in-blocks.https.html"
}, },
{
"path": "mixed-content/blockable/http-csp/same-host-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/same-host-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/http-csp/same-host-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/same-host-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/http-csp/same-host-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/http-csp/same-host-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html"
},
{ {
"path": "mixed-content/blockable/meta-csp/cross-origin-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/meta-csp/cross-origin-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/meta-csp/cross-origin-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/meta-csp/cross-origin-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html"
@ -18713,6 +18763,10 @@
"path": "mixed-content/blockable/meta-csp/cross-origin-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/meta-csp/cross-origin-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/meta-csp/cross-origin-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/meta-csp/cross-origin-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html"
}, },
{
"path": "mixed-content/blockable/meta-csp/cross-origin-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/meta-csp/cross-origin-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html"
},
{ {
"path": "mixed-content/blockable/meta-csp/same-host-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/meta-csp/same-host-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/meta-csp/same-host-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/meta-csp/same-host-http/fetch-request/top-level/no-redirect/opt-in-blocks.https.html"
@ -18749,6 +18803,10 @@
"path": "mixed-content/blockable/meta-csp/same-host-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html", "path": "mixed-content/blockable/meta-csp/same-host-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/blockable/meta-csp/same-host-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html" "url": "/mixed-content/blockable/meta-csp/same-host-http/xhr-request/top-level/no-redirect/opt-in-blocks.https.html"
}, },
{
"path": "mixed-content/blockable/meta-csp/same-host-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/meta-csp/same-host-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html"
},
{ {
"path": "mixed-content/blockable/no-opt-in/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html", "path": "mixed-content/blockable/no-opt-in/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html" "url": "/mixed-content/blockable/no-opt-in/cross-origin-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html"
@ -18857,6 +18915,18 @@
"path": "mixed-content/blockable/no-opt-in/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html", "path": "mixed-content/blockable/no-opt-in/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html" "url": "/mixed-content/blockable/no-opt-in/cross-origin-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html"
}, },
{
"path": "mixed-content/blockable/no-opt-in/cross-origin-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/cross-origin-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/no-opt-in/cross-origin-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/cross-origin-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/no-opt-in/cross-origin-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/cross-origin-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html"
},
{ {
"path": "mixed-content/blockable/no-opt-in/same-host-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html", "path": "mixed-content/blockable/no-opt-in/same-host-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/same-host-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html" "url": "/mixed-content/blockable/no-opt-in/same-host-http/fetch-request/top-level/keep-scheme-redirect/no-opt-in-blocks.https.html"
@ -18965,6 +19035,18 @@
"path": "mixed-content/blockable/no-opt-in/same-host-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html", "path": "mixed-content/blockable/no-opt-in/same-host-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/same-host-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html" "url": "/mixed-content/blockable/no-opt-in/same-host-http/xhr-request/top-level/swap-scheme-redirect/no-opt-in-blocks.https.html"
}, },
{
"path": "mixed-content/blockable/no-opt-in/same-host-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/same-host-ws/websocket-request/top-level/keep-scheme-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/no-opt-in/same-host-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/same-host-ws/websocket-request/top-level/no-redirect/ws-downgrade-blocks.https.html"
},
{
"path": "mixed-content/blockable/no-opt-in/same-host-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html",
"url": "/mixed-content/blockable/no-opt-in/same-host-ws/websocket-request/top-level/swap-scheme-redirect/ws-downgrade-blocks.https.html"
},
{ {
"path": "mixed-content/optionally-blockable/http-csp/cross-origin-http/audio-tag/top-level/keep-scheme-redirect/opt-in-blocks.https.html", "path": "mixed-content/optionally-blockable/http-csp/cross-origin-http/audio-tag/top-level/keep-scheme-redirect/opt-in-blocks.https.html",
"url": "/mixed-content/optionally-blockable/http-csp/cross-origin-http/audio-tag/top-level/keep-scheme-redirect/opt-in-blocks.https.html" "url": "/mixed-content/optionally-blockable/http-csp/cross-origin-http/audio-tag/top-level/keep-scheme-redirect/opt-in-blocks.https.html"
@ -19270,8 +19352,12 @@
"url": "/navigation-timing/test_unique_performance_objects.html" "url": "/navigation-timing/test_unique_performance_objects.html"
}, },
{ {
"path": "notifications/Notification-permission.html", "path": "notifications/constructor-basic.html",
"url": "/notifications/Notification-permission.html" "url": "/notifications/constructor-basic.html"
},
{
"path": "notifications/constructor-invalid.html",
"url": "/notifications/constructor-invalid.html"
}, },
{ {
"path": "notifications/event-onclose.html", "path": "notifications/event-onclose.html",
@ -19290,16 +19376,12 @@
"url": "/notifications/interfaces.html" "url": "/notifications/interfaces.html"
}, },
{ {
"path": "notifications/notification-constructor-basic.html", "path": "notifications/lang.html",
"url": "/notifications/notification-constructor-basic.html" "url": "/notifications/lang.html"
}, },
{ {
"path": "notifications/notification-constructor-invalid.html", "path": "notifications/permission.html",
"url": "/notifications/notification-constructor-invalid.html" "url": "/notifications/permission.html"
},
{
"path": "notifications/notification-lang.html",
"url": "/notifications/notification-lang.html"
}, },
{ {
"path": "old-tests/submission/Microsoft/dragdrop/dragdrop_004.htm", "path": "old-tests/submission/Microsoft/dragdrop/dragdrop_004.htm",
@ -24793,22 +24875,10 @@
"path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-001.html", "path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-001.html",
"url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-001.html" "url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-001.html"
}, },
{
"path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-002.html",
"url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-002.html"
},
{
"path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-003.html",
"url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-003.html"
},
{ {
"path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-004.html", "path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-004.html",
"url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-004.html" "url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-004.html"
}, },
{
"path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-005.html",
"url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-005.html"
},
{ {
"path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-006.html", "path": "shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-006.html",
"url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-006.html" "url": "/shadow-dom/elements-and-dom-objects/shadowroot-object/shadowroot-methods/test-006.html"
@ -25005,18 +25075,6 @@
"path": "shadow-dom/shadow-trees/custom-pseudo-elements/test-001.html", "path": "shadow-dom/shadow-trees/custom-pseudo-elements/test-001.html",
"url": "/shadow-dom/shadow-trees/custom-pseudo-elements/test-001.html" "url": "/shadow-dom/shadow-trees/custom-pseudo-elements/test-001.html"
}, },
{
"path": "shadow-dom/shadow-trees/hosting-multiple-shadow-trees/test-001.html",
"url": "/shadow-dom/shadow-trees/hosting-multiple-shadow-trees/test-001.html"
},
{
"path": "shadow-dom/shadow-trees/hosting-multiple-shadow-trees/test-002.html",
"url": "/shadow-dom/shadow-trees/hosting-multiple-shadow-trees/test-002.html"
},
{
"path": "shadow-dom/shadow-trees/hosting-multiple-shadow-trees/test-003.html",
"url": "/shadow-dom/shadow-trees/hosting-multiple-shadow-trees/test-003.html"
},
{ {
"path": "shadow-dom/shadow-trees/lower-boundary-encapsulation/distribution-003.html", "path": "shadow-dom/shadow-trees/lower-boundary-encapsulation/distribution-003.html",
"url": "/shadow-dom/shadow-trees/lower-boundary-encapsulation/distribution-003.html" "url": "/shadow-dom/shadow-trees/lower-boundary-encapsulation/distribution-003.html"
@ -25065,66 +25123,6 @@
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-005.html", "path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-005.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-005.html" "url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-005.html"
}, },
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-006.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-006.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-007.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-007.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-008.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-008.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-009.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-009.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-010.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-010.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-011.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-011.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-012.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-012.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-013.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-013.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-014.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-014.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-015.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-015.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-016.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-016.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-017.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-017.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-018.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-018.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-019.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-019.html"
},
{
"path": "shadow-dom/shadow-trees/satisfying-matching-criteria/test-020.html",
"url": "/shadow-dom/shadow-trees/satisfying-matching-criteria/test-020.html"
},
{ {
"path": "shadow-dom/shadow-trees/upper-boundary-encapsulation/dom-tree-accessors-001.html", "path": "shadow-dom/shadow-trees/upper-boundary-encapsulation/dom-tree-accessors-001.html",
"url": "/shadow-dom/shadow-trees/upper-boundary-encapsulation/dom-tree-accessors-001.html" "url": "/shadow-dom/shadow-trees/upper-boundary-encapsulation/dom-tree-accessors-001.html"
@ -25197,10 +25195,6 @@
"path": "shadow-dom/styles/test-001.html", "path": "shadow-dom/styles/test-001.html",
"url": "/shadow-dom/styles/test-001.html" "url": "/shadow-dom/styles/test-001.html"
}, },
{
"path": "shadow-dom/styles/test-002.html",
"url": "/shadow-dom/styles/test-002.html"
},
{ {
"path": "shadow-dom/styles/test-003.html", "path": "shadow-dom/styles/test-003.html",
"url": "/shadow-dom/styles/test-003.html" "url": "/shadow-dom/styles/test-003.html"
@ -25849,6 +25843,10 @@
"path": "websockets/Close-Reason-124Bytes.htm", "path": "websockets/Close-Reason-124Bytes.htm",
"url": "/websockets/Close-Reason-124Bytes.htm" "url": "/websockets/Close-Reason-124Bytes.htm"
}, },
{
"path": "websockets/Close-clamp.htm",
"url": "/websockets/Close-clamp.htm"
},
{ {
"path": "websockets/Close-null.htm", "path": "websockets/Close-null.htm",
"url": "/websockets/Close-null.htm" "url": "/websockets/Close-null.htm"
@ -28859,16 +28857,7 @@
}, },
"local_changes": { "local_changes": {
"deleted": [], "deleted": [],
"items": { "items": {},
"testharness": {
"websockets/Close-clamp.htm": [
{
"path": "websockets/Close-clamp.htm",
"url": "/websockets/Close-clamp.htm"
}
]
}
},
"reftest_nodes": {} "reftest_nodes": {}
}, },
"reftest_nodes": { "reftest_nodes": {
@ -30672,6 +30661,18 @@
"url": "/html/rendering/non-replaced-elements/tables/table-width-150percent.html" "url": "/html/rendering/non-replaced-elements/tables/table-width-150percent.html"
} }
], ],
"html/rendering/non-replaced-elements/the-fieldset-element-0/min-width-not-important.html": [
{
"path": "html/rendering/non-replaced-elements/the-fieldset-element-0/min-width-not-important.html",
"references": [
[
"/html/rendering/non-replaced-elements/the-fieldset-element-0/ref.html",
"=="
]
],
"url": "/html/rendering/non-replaced-elements/the-fieldset-element-0/min-width-not-important.html"
}
],
"html/rendering/non-replaced-elements/the-page/body_text_00ffff.xhtml": [ "html/rendering/non-replaced-elements/the-page/body_text_00ffff.xhtml": [
{ {
"path": "html/rendering/non-replaced-elements/the-page/body_text_00ffff.xhtml", "path": "html/rendering/non-replaced-elements/the-page/body_text_00ffff.xhtml",
@ -34333,7 +34334,7 @@
} }
] ]
}, },
"rev": "5e3ea8f49fee68c327388bfd1dd1375a8ce12a0e", "rev": "12d3e15e5ecae695e1216c358d613705fbff6b68",
"url_base": "/", "url_base": "/",
"version": 2 "version": 2
} }

View file

@ -1,11 +0,0 @@
[ChildNode-after.html]
type: testharness
[Comment.after() with one sibling of child and text as arguments.]
expected: FAIL
[Element.after() with one sibling of child and text as arguments.]
expected: FAIL
[Text.after() with one sibling of child and text as arguments.]
expected: FAIL

View file

@ -0,0 +1,86 @@
[Element-matches.html]
type: testharness
[In-document Element.matches: Attribute hyphen-separated list selector, matching lang attribute with partial value (with no refNodes): #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[In-document Element.matches: :target pseudo-class selector, matching the element referenced by the URL fragment identifier (with no refNodes): :target]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching inherited language (with no refNodes): #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with exact value (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with partial value (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.matches: :checked pseudo-class selector, matching checked radio buttons and checkboxes (with no refNodes): #pseudo-ui :checked]
expected: FAIL
[Detached Element.matches: Attribute hyphen-separated list selector, matching lang attribute with partial value (with no refNodes): #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Detached Element.matches: :lang pseudo-class selector, matching specified language with exact value (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.matches: :lang pseudo-class selector, matching specified language with partial value (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.matches: :enabled pseudo-class selector, matching all disabled form controls (with no refNodes): #pseudo-ui :disabled]
expected: FAIL
[Detached Element.matches: :checked pseudo-class selector, matching checked radio buttons and checkboxes (with no refNodes): #pseudo-ui :checked]
expected: FAIL
[Fragment Element.matches: Attribute hyphen-separated list selector, matching lang attribute with partial value (with no refNodes): #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Fragment Element.matches: :lang pseudo-class selector, matching specified language with exact value (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment Element.matches: :lang pseudo-class selector, matching specified language with partial value (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment Element.matches: :enabled pseudo-class selector, matching all disabled form controls (with no refNodes): #pseudo-ui :disabled]
expected: FAIL
[Fragment Element.matches: :checked pseudo-class selector, matching checked radio buttons and checkboxes (with no refNodes): #pseudo-ui :checked]
expected: FAIL
[In-document Element.matches: Universal selector, matching all children of the specified reference element (with refNode Element): >*]
expected: FAIL
[In-document Element.matches: Universal selector, matching all grandchildren of the specified reference element (with refNode Element): >*>*]
expected: FAIL
[In-document Element.matches: Universal selector, matching all descendants of the specified reference element (with refNode Element): *]
expected: FAIL
[In-document Element.matches: Attribute hyphen-separated list selector, matching lang attribute with partial value (with refNode Element): #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching inherited language (1) (with no refNodes): #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with exact value (1) (with no refNodes): #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.matches: :lang pseudo-class selector, matching specified language with partial value (1) (with no refNodes): #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.matches: :checked pseudo-class selector, matching checked radio buttons and checkboxes (1) (with no refNodes): #pseudo-ui :checked]
expected: FAIL
[In-document Element.matches: Class selector, matching element with class value using non-ASCII characters (with no refNodes): .台北Táiběi]
expected: FAIL
[In-document Element.matches: Class selector, chained, matching element with multiple class values using non-ASCII characters (with no refNodes): .台北Táiběi.台北]
expected: FAIL
[In-document Element.matches: ID selector, matching id value using non-ASCII characters (with no refNodes): #台北Táiběi]
expected: FAIL
[In-document Element.matches: ID selector, matching id values using non-ASCII characters (with no refNodes): #台北Táiběi, #台北]
expected: FAIL

View file

@ -0,0 +1,761 @@
[ParentNode-querySelector-All.html]
type: testharness
[Detached Element.querySelectorAll tree order]
expected: FAIL
[In-document Element.querySelectorAll tree order]
expected: FAIL
[Document.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[Document.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[Document.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Document.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Document.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[Document.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Document.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Document.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Document.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[Document.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[Document.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[Document.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[Document.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[Document.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[Document.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[Document.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[Document.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Document.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Detached Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[Detached Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[Detached Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Detached Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Detached Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[Detached Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Detached Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Detached Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Detached Element.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled]
expected: FAIL
[Detached Element.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled]
expected: FAIL
[Detached Element.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled]
expected: FAIL
[Detached Element.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[Detached Element.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[Detached Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[Detached Element.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[Detached Element.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[Detached Element.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[Detached Element.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[Detached Element.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[Detached Element.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Detached Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Fragment.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[Fragment.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[Fragment.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Fragment.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[Fragment.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[Fragment.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, not matching element with no inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[Fragment.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Fragment.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[Fragment.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled]
expected: FAIL
[Fragment.querySelectorAll: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled]
expected: FAIL
[Fragment.querySelector: :enabled pseudo-class selector, matching all disabled form controls: #pseudo-ui :disabled]
expected: FAIL
[Fragment.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[Fragment.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[Fragment.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[Fragment.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[Fragment.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[Fragment.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[Fragment.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[Fragment.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[Fragment.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[Fragment.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[In-document Element.querySelectorAll: Type selector, matching html element: html]
expected: FAIL
[In-document Element.querySelector: Type selector, matching html element: html]
expected: FAIL
[In-document Element.querySelectorAll: Type selector, matching body element: body]
expected: FAIL
[In-document Element.querySelector: Type selector, matching body element: body]
expected: FAIL
[In-document Element.querySelectorAll: Universal selector, matching all children of element with specified ID: #universal>*]
expected: FAIL
[In-document Element.querySelectorAll: Universal selector, matching all grandchildren of element with specified ID: #universal>*>*]
expected: FAIL
[In-document Element.querySelectorAll: Universal selector, matching all descendants of element with specified ID: #universal *]
expected: FAIL
[In-document Element.querySelectorAll: Attribute presence selector, matching align attribute with value: .attr-presence-div1[align\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute presence selector, matching align attribute with empty value: .attr-presence-div2[align\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute presence selector, matching title attribute, case insensitivity: #attr-presence [TiTlE\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute presence selector, matching custom data-* attribute: [data-attr-presence\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute presence selector, matching attribute with non-ASCII characters: ul[data-中文\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute presence selector, matching option with selected attribute: #attr-presence-select2 option[selected\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute presence selector, matching multiple options with selected attributes: #attr-presence-select3 option[selected\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector, matching align attribute with value: #attr-value [align="center"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector, matching align attribute with empty value: #attr-value [align=""\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with unicode escaped value: [data-attr-value="\\e9"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector, matching custom data-* attribute with escaped character: [data-attr-value_foo="\\e9"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector with single-quoted value, matching multiple inputs with type attributes: #attr-value input[type='hidden'\],#attr-value input[type='radio'\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector with double-quoted value, matching multiple inputs with type attributes: #attr-value input[type="hidden"\],#attr-value input[type='radio'\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector with unquoted value, matching multiple inputs with type attributes: #attr-value input[type=hidden\],#attr-value input[type=radio\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute value selector, matching attribute with value using non-ASCII characters: [data-attr-value=中文\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching class attribute with value: #attr-whitespace [class~="div1"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[In-document Element.querySelector: Attribute whitespace-separated list selector, not matching class attribute with empty value: #attr-whitespace [class~=""\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with unicode escaped value: [data-attr-whitespace~="\\0000e9"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching custom data-* attribute with escaped character: [data-attr-whitespace_foo~="\\e9"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector with single-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~='bookmark'\], #attr-whitespace a[rel~='nofollow'\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector with double-quoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~="bookmark"\],#attr-whitespace a[rel~='nofollow'\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector with unquoted value, matching multiple links with rel attributes: #attr-whitespace a[rel~=bookmark\], #attr-whitespace a[rel~=nofollow\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute whitespace-separated list selector, matching title attribute with value using non-ASCII characters: #attr-whitespace [title~=中文\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with exact value: #attr-hyphen-div2[lang|="fr"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[In-document Element.querySelector: Attribute hyphen-separated list selector, matching lang attribute with partial value: #attr-hyphen-div3[lang|="en"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute begins with selector, matching href attributes beginning with specified substring: #attr-begins a[href^="http://www"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute begins with selector, matching lang attributes beginning with specified substring, : #attr-begins [lang^="en-"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute begins with selector with single-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=' apple'\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute begins with selector with double-quoted value, matching class attribute beginning with specified substring: #attr-begins [class^=" apple"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute ends with selector, matching href attributes ending with specified substring: #attr-ends a[href$=".org"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute ends with selector, matching lang attributes ending with specified substring, : #attr-ends [lang$="-CH"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute ends with selector with single-quoted value, matching class attribute ending with specified substring: #attr-ends [class$='apple '\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute ends with selector with double-quoted value, matching class attribute ending with specified substring: #attr-ends [class$="apple "\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector, matching href attributes beginning with specified substring: #attr-contains a[href*="http://www"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector, matching href attributes ending with specified substring: #attr-contains a[href*=".org"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector, matching href attributes containing specified substring: #attr-contains a[href*=".example."\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes beginning with specified substring, : #attr-contains [lang*="en-"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector, matching lang attributes ending with specified substring, : #attr-contains [lang*="-CH"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=' apple'\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute ending with specified substring: #attr-contains [class*='orange '\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with single-quoted value, matching class attribute containing specified substring: #attr-contains [class*='ple banana ora'\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute beginning with specified substring: #attr-contains [class*=" apple"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute ending with specified substring: #attr-contains [class*="orange "\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with double-quoted value, matching class attribute containing specified substring: #attr-contains [class*="ple banana ora"\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute beginning with specified substring: #attr-contains [class*= apple\]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute ending with specified substring: #attr-contains [class*=orange \]]
expected: FAIL
[In-document Element.querySelectorAll: Attribute contains selector with unquoted value, matching class attribute containing specified substring: #attr-contains [class*= banana \]]
expected: FAIL
[In-document Element.querySelectorAll: :root pseudo-class selector, not matching document root element: :root]
expected: FAIL
[In-document Element.querySelector: :root pseudo-class selector, not matching document root element: :root]
expected: FAIL
[In-document Element.querySelectorAll: :nth-child selector, matching the third child element: #pseudo-nth-table1 :nth-child(3)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-child selector, matching every third child element: #pseudo-nth li:nth-child(3n)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-child selector, matching every second child element, starting from the fourth: #pseudo-nth li:nth-child(2n+4)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-child selector, matching every fourth child element, starting from the third: #pseudo-nth-p1 :nth-child(4n-1)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-last-child selector, matching the third last child element: #pseudo-nth-table1 :nth-last-child(3)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-last-child selector, matching every third child element from the end: #pseudo-nth li:nth-last-child(3n)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-last-child selector, matching every second child element from the end, starting from the fourth last: #pseudo-nth li:nth-last-child(2n+4)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-last-child selector, matching every fourth element from the end, starting from the third last: #pseudo-nth-p1 :nth-last-child(4n-1)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-of-type selector, matching the third em element: #pseudo-nth-p1 em:nth-of-type(3)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-of-type selector, matching every second element of their type: #pseudo-nth-p1 :nth-of-type(2n)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-of-type selector, matching every second elemetn of their type, starting from the first: #pseudo-nth-p1 span:nth-of-type(2n-1)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-last-of-type selector, matching the thrid last em element: #pseudo-nth-p1 em:nth-last-of-type(3)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type: #pseudo-nth-p1 :nth-last-of-type(2n)]
expected: FAIL
[In-document Element.querySelectorAll: :nth-last-of-type selector, matching every second last element of their type, starting from the last: #pseudo-nth-p1 span:nth-last-of-type(2n-1)]
expected: FAIL
[In-document Element.querySelectorAll: :first-of-type selector, matching the first em element: #pseudo-nth-p1 em:first-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :first-of-type selector, matching the first of every type of element: #pseudo-nth-p1 :first-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :first-of-type selector, matching the first td element in each table row: #pseudo-nth-table1 tr :first-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :last-of-type selector, matching the last em elemnet: #pseudo-nth-p1 em:last-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :last-of-type selector, matching the last of every type of element: #pseudo-nth-p1 :last-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :last-of-type selector, matching the last td element in each table row: #pseudo-nth-table1 tr :last-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :first-child pseudo-class selector, matching first child div element: #pseudo-first-child div:first-child]
expected: FAIL
[In-document Element.querySelectorAll: :first-child pseudo-class selector, matching first-child of multiple elements: #pseudo-first-child span:first-child]
expected: FAIL
[In-document Element.querySelectorAll: :last-child pseudo-class selector, matching last child div element: #pseudo-last-child div:last-child]
expected: FAIL
[In-document Element.querySelectorAll: :last-child pseudo-class selector, matching first-child of multiple elements: #pseudo-last-child span:last-child]
expected: FAIL
[In-document Element.querySelectorAll: :pseudo-only-child pseudo-class selector, matching all only-child elements: #pseudo-only :only-child]
expected: FAIL
[In-document Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching all elements with no siblings of the same type: #pseudo-only :only-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :pseudo-only-of-type pseudo-class selector, matching em elements with no siblings of the same type: #pseudo-only em:only-of-type]
expected: FAIL
[In-document Element.querySelectorAll: :empty pseudo-class selector, matching empty p elements: #pseudo-empty p:empty]
expected: FAIL
[In-document Element.querySelectorAll: :empty pseudo-class selector, matching all empty elements: #pseudo-empty :empty]
expected: FAIL
[In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, matching a and area elements with href attributes: #pseudo-link :link, #pseudo-link :visited]
expected: FAIL
[In-document Element.querySelectorAll: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited]
expected: FAIL
[In-document Element.querySelector: :link and :visited pseudo-class selectors, not matching link elements with href attributes: #head :link, #head :visited]
expected: FAIL
[In-document Element.querySelectorAll: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[In-document Element.querySelector: :target pseudo-class selector, matching the element referenced by the URL fragment identifier: :target]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching inherited language: #pseudo-lang-div1:lang(en)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching specified language with exact value: #pseudo-lang-div2:lang(fr)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, matching specified language with partial value: #pseudo-lang-div3:lang(en)]
expected: FAIL
[In-document Element.querySelectorAll: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[In-document Element.querySelector: :lang pseudo-class selector, not matching incorrect language: #pseudo-lang-div4:lang(es-AR)]
expected: FAIL
[In-document Element.querySelectorAll: :enabled pseudo-class selector, matching all enabled form controls: #pseudo-ui :enabled]
expected: FAIL
[In-document Element.querySelectorAll: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[In-document Element.querySelector: :checked pseudo-class selector, matching checked radio buttons and checkboxes: #pseudo-ui :checked]
expected: FAIL
[In-document Element.querySelectorAll: :not pseudo-class selector, matching : #not>:not(div)]
expected: FAIL
[In-document Element.querySelectorAll: :not pseudo-class selector, matching : #not * :not(:first-child)]
expected: FAIL
[In-document Element.querySelectorAll: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[In-document Element.querySelector: :first-line pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-line]
expected: FAIL
[In-document Element.querySelectorAll: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[In-document Element.querySelector: ::first-line pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-line]
expected: FAIL
[In-document Element.querySelectorAll: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[In-document Element.querySelector: :first-letter pseudo-element (one-colon syntax) selector, not matching any elements: #pseudo-element:first-letter]
expected: FAIL
[In-document Element.querySelectorAll: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[In-document Element.querySelector: ::first-letter pseudo-element (two-colon syntax) selector, not matching any elements: #pseudo-element::first-letter]
expected: FAIL
[In-document Element.querySelectorAll: Class selector, matching element with specified class: .class-p]
expected: FAIL
[In-document Element.querySelectorAll: Class selector, chained, matching only elements with all specified classes: #class .apple.orange.banana]
expected: FAIL
[In-document Element.querySelectorAll: Class Selector, chained, with type selector: div.apple.banana.orange]
expected: FAIL
[In-document Element.querySelectorAll: Class selector, matching element with class value using non-ASCII characters: .台北Táiběi]
expected: FAIL
[In-document Element.querySelectorAll: Class selector, matching multiple elements with class value using non-ASCII characters: .台北]
expected: FAIL
[In-document Element.querySelectorAll: Class selector, chained, matching element with multiple class values using non-ASCII characters: .台北Táiběi.台北]
expected: FAIL
[In-document Element.querySelectorAll: Class selector, matching element with class with escaped character: .foo\\:bar]
expected: FAIL
[In-document Element.querySelectorAll: Class selector, matching element with class with escaped character: .test\\.foo\\[5\\\]bar]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, matching element with specified id: #id #id-div1]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div1]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, chained, matching element with specified id: #id-div1, #id-div2]
expected: FAIL
[In-document Element.querySelectorAll: ID Selector, chained, with type selector: div#id-div1, div#id-div2]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, matching multiple elements with duplicate id: #id-li-duplicate]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, matching id value using non-ASCII characters: #台北Táiběi]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, matching id value using non-ASCII characters: #台北]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, matching id values using non-ASCII characters: #台北Táiběi, #台北]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, matching element with id with escaped character: #\\#foo\\:bar]
expected: FAIL
[In-document Element.querySelectorAll: ID selector, matching element with id with escaped character: #test\\.foo\\[5\\\]bar]
expected: FAIL
[In-document Element.querySelectorAll: Namespace selector, matching element with any namespace: #any-namespace *|div]
expected: FAIL
[In-document Element.querySelectorAll: Namespace selector, matching div elements in no namespace only: #no-namespace |div]
expected: FAIL
[In-document Element.querySelectorAll: Namespace selector, matching any elements in no namespace only: #no-namespace |*]
expected: FAIL
[In-document Element.querySelectorAll: Descendant combinator, matching element that is a descendant of an element with id: #descendant div]
expected: FAIL
[In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: body #descendant-div1]
expected: FAIL
[In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element: div #descendant-div1]
expected: FAIL
[In-document Element.querySelectorAll: Descendant combinator, matching element with id that is a descendant of an element with id: #descendant #descendant-div2]
expected: FAIL
[In-document Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with id: #descendant .descendant-div2]
expected: FAIL
[In-document Element.querySelectorAll: Descendant combinator, matching element with class that is a descendant of an element with class: .descendant-div1 .descendant-div3]
expected: FAIL
[In-document Element.querySelectorAll: Descendant combinator, whitespace characters: #descendant\t\r\n#descendant-div2]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, matching element that is a child of an element with id: #child>div]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element: div>#child-div1]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with id: #child>#child-div1]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, matching element with id that is a child of an element with class: #child-div1>.child-div2]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, matching element with class that is a child of an element with class: .child-div1>.child-div2]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, surrounded by whitespace: #child-div1\t\r\n>\t\r\n#child-div2]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, whitespace after: #child-div1>\t\r\n#child-div2]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, whitespace before: #child-div1\t\r\n>#child-div2]
expected: FAIL
[In-document Element.querySelectorAll: Child combinator, no whitespace: #child-div1>#child-div2]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, matching element that is an adjacent sibling of an element with id: #adjacent-div2+div]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element: div+#adjacent-div4]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with id that is an adjacent sibling of an element with id: #adjacent-div2+#adjacent-div4]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with id: #adjacent-div2+.adjacent-div4]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, matching element with class that is an adjacent sibling of an element with class: .adjacent-div2+.adjacent-div4]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, matching p element that is an adjacent sibling of a div element: #adjacent div+p]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, surrounded by whitespace: #adjacent-p2\t\r\n+\t\r\n#adjacent-p3]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, whitespace after: #adjacent-p2+\t\r\n#adjacent-p3]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, whitespace before: #adjacent-p2\t\r\n+#adjacent-p3]
expected: FAIL
[In-document Element.querySelectorAll: Adjacent sibling combinator, no whitespace: #adjacent-p2+#adjacent-p3]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, matching element that is a sibling of an element with id: #sibling-div2~div]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element: div~#sibling-div4]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, matching element with id that is a sibling of an element with id: #sibling-div2~#sibling-div4]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, matching element with class that is a sibling of an element with id: #sibling-div2~.sibling-div]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, matching p element that is a sibling of a div element: #sibling div~p]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, surrounded by whitespace: #sibling-p2\t\r\n~\t\r\n#sibling-p3]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, whitespace after: #sibling-p2~\t\r\n#sibling-p3]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, whitespace before: #sibling-p2\t\r\n~#sibling-p3]
expected: FAIL
[In-document Element.querySelectorAll: General sibling combinator, no whitespace: #sibling-p2~#sibling-p3]
expected: FAIL
[In-document Element.querySelectorAll: Syntax, group of selectors separator, surrounded by whitespace: #group em\t\r \n,\t\r \n#group strong]
expected: FAIL
[In-document Element.querySelectorAll: Syntax, group of selectors separator, whitespace after: #group em,\t\r\n#group strong]
expected: FAIL
[In-document Element.querySelectorAll: Syntax, group of selectors separator, whitespace before: #group em\t\r\n,#group strong]
expected: FAIL
[In-document Element.querySelectorAll: Syntax, group of selectors separator, no whitespace: #group em,#group strong]
expected: FAIL

View file

@ -3,3 +3,4 @@
[Image and HTMLImageElement share a prototype] [Image and HTMLImageElement share a prototype]
expected: expected:
if not debug: FAIL if not debug: FAIL

View file

@ -1,4 +1,4 @@
[disabled.html] [disabled-001.html]
type: testharness type: testharness
[The disabled attribute, when specified, causes all the form control descendants of the fieldset element, excluding those that are descendants of the fieldset element's first legend element child, if any, to be disabled.] [The disabled attribute, when specified, causes all the form control descendants of the fieldset element, excluding those that are descendants of the fieldset element's first legend element child, if any, to be disabled.]
expected: FAIL expected: FAIL

View file

@ -0,0 +1,5 @@
[disabled-002.xhtml]
type: testharness
[A file input without a disabled attribute that is a descendant of a disabled fieldset should be disabled (modulo legend-related complications that don't apply here)]
expected: FAIL

View file

@ -33,3 +33,6 @@
[Check that the labels property of a form control with no label returns a zero-length NodeList.] [Check that the labels property of a form control with no label returns a zero-length NodeList.]
expected: FAIL expected: FAIL
[A label's htmlFor attribute must reflect the for content attribute]
expected: FAIL

View file

@ -0,0 +1,5 @@
[legend-form.html]
type: testharness
[Check if legend.form return null when legend has no fieldset element as its parent]
expected: FAIL

View file

@ -1 +1 @@
f52a4a292aa30b1dcb3e36812f82aeef1e2bdd20 78455ec033c6116732a8f43b909093b7d7732779

View file

@ -1,3 +1,4 @@
sudo: false # cause Travis to start builds much faster
language: python language: python
python: python:
- "2.7" - "2.7"

View file

@ -29,10 +29,7 @@ test(function() {
assert_equals(blob.type, ""); assert_equals(blob.type, "");
}, "no-argument Blob constructor"); }, "no-argument Blob constructor");
test(function() { test(function() {
var blob = Blob(); assert_throws(new TypeError(), function() { var blob = Blob(); });
assert_true(blob instanceof Blob);
assert_equals(blob.size, 0);
assert_equals(blob.type, "");
}, "no-argument Blob constructor without 'new'"); }, "no-argument Blob constructor without 'new'");
test(function() { test(function() {
var blob = new Blob; var blob = new Blob;

View file

@ -15,144 +15,46 @@
<div id="log"></div> <div id="log"></div>
<pre id="untested_idl" style="display: none">
interface ArrayBuffer {
};
interface ArrayBufferView {
};
interface URL {
};
interface EventTarget {
};
interface Event {
};
[TreatNonCallableAsNull]
callback EventHandlerNonNull = any (Event event);
typedef EventHandlerNonNull? EventHandler;
</pre>
<pre id="idl" style="display: none">
[Constructor,
Constructor(sequence<(ArrayBuffer or ArrayBufferView or Blob or DOMString)> blobParts, optional BlobPropertyBag options), Exposed=Window,Worker]
interface Blob {
readonly attribute unsigned long long size;
readonly attribute DOMString type;
readonly attribute boolean isClosed;
//slice Blob into byte-ranged chunks
Blob slice([Clamp] optional long long start,
[Clamp] optional long long end,
optional DOMString contentType);
void close();
};
dictionary BlobPropertyBag {
DOMString type = "";
};
[Constructor(sequence<(Blob or DOMString or ArrayBufferView or ArrayBuffer)> fileBits,
[EnsureUTF16] DOMString fileName, optional FilePropertyBag options), Exposed=Window,Worker]
interface File : Blob {
readonly attribute DOMString name;
readonly attribute long long lastModified;
};
dictionary FilePropertyBag {
DOMString type = "";
long long lastModified;
};
[Exposed=Window,Worker] interface FileList {
getter File? item(unsigned long index);
readonly attribute unsigned long length;
};
[Constructor, Exposed=Window,Worker]
interface FileReader: EventTarget {
// async read methods
void readAsArrayBuffer(Blob blob);
void readAsText(Blob blob, optional DOMString label);
void readAsDataURL(Blob blob);
void abort();
// states
const unsigned short EMPTY = 0;
const unsigned short LOADING = 1;
const unsigned short DONE = 2;
readonly attribute unsigned short readyState;
// File or Blob data
readonly attribute (DOMString or ArrayBuffer)? result;
readonly attribute DOMError? error;
// event handler attributes
attribute EventHandler onloadstart;
attribute EventHandler onprogress;
attribute EventHandler onload;
attribute EventHandler onabort;
attribute EventHandler onerror;
attribute EventHandler onloadend;
};
[Constructor, Exposed=Worker]
interface FileReaderSync {
// Synchronously return strings
ArrayBuffer readAsArrayBuffer(Blob blob);
DOMString readAsText(Blob blob, optional DOMString label);
DOMString readAsDataURL(Blob blob);
};
partial interface URL {
static DOMString createObjectURL(Blob blob);
static DOMString createFor(Blob blob);
static void revokeObjectURL(DOMString url);
};
</pre>
<form name="uploadData"> <form name="uploadData">
<input type="file" id="fileChooser"> <input type="file" id="fileChooser">
</form> </form>
<script> <script>
var idl_array, file_input; var file_input;
setup(function() {
var idl_array = new IdlArray();
var request = new XMLHttpRequest();
request.open("GET", "idlharness.idl");
request.send();
request.onload = function() {
var idls = request.responseText;
idl_array.add_untested_idls("[PrimaryGlobal] interface Window { };");
idl_array.add_untested_idls("interface ArrayBuffer {};");
idl_array.add_untested_idls("interface ArrayBufferView {};");
idl_array.add_untested_idls("interface URL {};");
idl_array.add_untested_idls("interface EventTarget {};");
idl_array.add_untested_idls("interface Event {};");
idl_array.add_untested_idls("[TreatNonCallableAsNull] callback EventHandlerNonNull = any (Event event);");
idl_array.add_untested_idls("typedef EventHandlerNonNull? EventHandler;");
idl_array.add_idls(idls);
setup(function() {
file_input = document.querySelector("#fileChooser"); file_input = document.querySelector("#fileChooser");
idl_array = new IdlArray();
idl_array.add_untested_idls(document.getElementById("untested_idl").textContent);
idl_array.add_idls(document.getElementById("idl").textContent);
idl_array.add_objects({ idl_array.add_objects({
Blob: ['new Blob(["TEST"])'], Blob: ['new Blob(["TEST"])'],
File: ['new File(["myFileBits"], "myFileName")'], File: ['new File(["myFileBits"], "myFileName")'],
FileList: ['file_input.files'], FileList: ['file_input.files'],
FileReader: ['new FileReader()'] FileReader: ['new FileReader()']
}); });
});
idl_array.test(); idl_array.test();
done();
};
}, {explicit_done: true});
</script> </script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,81 @@
[Constructor,
Constructor(sequence<(ArrayBuffer or ArrayBufferView or Blob or DOMString)> blobParts, optional BlobPropertyBag options), Exposed=Window,Worker]
interface Blob {
readonly attribute unsigned long long size;
readonly attribute DOMString type;
readonly attribute boolean isClosed;
//slice Blob into byte-ranged chunks
Blob slice([Clamp] optional long long start,
[Clamp] optional long long end,
optional DOMString contentType);
void close();
};
dictionary BlobPropertyBag {
DOMString type = "";
};
[Constructor(sequence<(Blob or DOMString or ArrayBufferView or ArrayBuffer)> fileBits,
[EnsureUTF16] DOMString fileName, optional FilePropertyBag options), Exposed=Window,Worker]
interface File : Blob {
readonly attribute DOMString name;
readonly attribute long long lastModified;
};
dictionary FilePropertyBag {
DOMString type = "";
long long lastModified;
};
[Exposed=Window,Worker] interface FileList {
getter File? item(unsigned long index);
readonly attribute unsigned long length;
};
[Constructor, Exposed=Window,Worker]
interface FileReader: EventTarget {
// async read methods
void readAsArrayBuffer(Blob blob);
void readAsText(Blob blob, optional DOMString label);
void readAsDataURL(Blob blob);
void abort();
// states
const unsigned short EMPTY = 0;
const unsigned short LOADING = 1;
const unsigned short DONE = 2;
readonly attribute unsigned short readyState;
// File or Blob data
readonly attribute (DOMString or ArrayBuffer)? result;
readonly attribute DOMError? error;
// event handler attributes
attribute EventHandler onloadstart;
attribute EventHandler onprogress;
attribute EventHandler onload;
attribute EventHandler onabort;
attribute EventHandler onerror;
attribute EventHandler onloadend;
};
partial interface URL {
static DOMString createObjectURL(Blob blob);
static DOMString createFor(Blob blob);
static void revokeObjectURL(DOMString url);
};

View file

@ -0,0 +1,45 @@
importScripts("/resources/testharness.js");
importScripts("/resources/WebIDLParser.js", "/resources/idlharness.js");
var request = new XMLHttpRequest();
request.open("GET", "idlharness.idl");
request.send();
request.onload = function() {
var idl_array = new IdlArray();
var idls = request.responseText;
idl_array.add_untested_idls("[Global] interface Window { };");
idl_array.add_untested_idls("interface ArrayBuffer {};");
idl_array.add_untested_idls("interface ArrayBufferView {};");
idl_array.add_untested_idls("interface URL {};");
idl_array.add_untested_idls("interface EventTarget {};");
idl_array.add_untested_idls("interface Event {};");
idl_array.add_untested_idls("[TreatNonCallableAsNull] callback EventHandlerNonNull = any (Event event);");
idl_array.add_untested_idls("typedef EventHandlerNonNull? EventHandler;");
var worker_idls =
'[Constructor, Exposed=Worker]\n' +
'interface FileReaderSync {\n' +
'\n' +
' // Synchronously return strings\n' +
'\n' +
' ArrayBuffer readAsArrayBuffer(Blob blob);\n' +
' DOMString readAsText(Blob blob, optional DOMString label);\n' +
' DOMString readAsDataURL(Blob blob);\n' +
'};';
idl_array.add_idls(idls);
idl_array.add_idls(worker_idls);
idl_array.add_objects({
Blob: ['new Blob(["TEST"])'],
File: ['new File(["myFileBits"], "myFileName")'],
FileReader: ['new FileReader()'],
FileReaderSync: ['new FileReaderSync()']
});
idl_array.test();
done();
};

View file

@ -24,6 +24,14 @@ test(function() {
"The message property should be inherited"); "The message property should be inherited");
}, 'new DOMException(): own-ness'); }, 'new DOMException(): own-ness');
test(function() {
var ex = new DOMException(null);
assert_equals(ex.name, "Error",
"Not passing a name should end up with 'Error' as the name");
assert_equals(ex.message, "null",
"Passing null as message should end up with stringified 'null' as the message");
}, 'new DOMException(null)');
test(function() { test(function() {
var ex = new DOMException(undefined); var ex = new DOMException(undefined);
assert_equals(ex.name, "Error", assert_equals(ex.name, "Error",
@ -55,6 +63,13 @@ test(function() {
"The message property should be own"); "The message property should be own");
}, 'new DOMException("foo"): own-ness'); }, 'new DOMException("foo"): own-ness');
test(function() {
var ex = new DOMException("bar", undefined);
assert_equals(ex.name, "Error",
"Passing undefined for name should end up with 'Error' as the name");
assert_equals(ex.message, "bar", "Should still be using passed-in message");
}, 'new DOMException("bar", undefined)');
test(function() { test(function() {
var ex = new DOMException("bar", "NotSupportedError"); var ex = new DOMException("bar", "NotSupportedError");
assert_equals(ex.name, "NotSupportedError", "Should be using the passed-in name"); assert_equals(ex.name, "NotSupportedError", "Should be using the passed-in name");
@ -70,4 +85,55 @@ test(function() {
assert_true(ex.hasOwnProperty("message"), assert_true(ex.hasOwnProperty("message"),
"The message property should be own"); "The message property should be own");
}, 'new DOMException("bar", "NotSupportedError"): own-ness'); }, 'new DOMException("bar", "NotSupportedError"): own-ness');
test(function() {
var ex = new DOMException("bar", "foo");
assert_equals(ex.name, "foo", "Should be using the passed-in name");
assert_equals(ex.message, "bar", "Should still be using passed-in message");
assert_equals(ex.code, 0,
"Should have 0 for code for a name not in the exception names table");
}, 'new DOMException("bar", "foo")');
[
{name: "IndexSizeError", code: 1},
{name: "HierarchyRequestError", code: 3},
{name: "WrongDocumentError", code: 4},
{name: "InvalidCharacterError", code: 5},
{name: "NoModificationAllowedError", code: 7},
{name: "NotFoundError", code: 8},
{name: "NotSupportedError", code: 9},
{name: "InUseAttributeError", code: 10},
{name: "InvalidStateError", code: 11},
{name: "SyntaxError", code: 12},
{name: "InvalidModificationError", code: 13},
{name: "NamespaceError", code: 14},
{name: "InvalidAccessError", code: 15},
{name: "SecurityError", code: 18},
{name: "NetworkError", code: 19},
{name: "AbortError", code: 20},
{name: "URLMismatchError", code: 21},
{name: "QuotaExceededError", code: 22},
{name: "TimeoutError", code: 23},
{name: "InvalidNodeTypeError", code: 24},
{name: "DataCloneError", code: 25}
].forEach(function(test_case) {
test(function() {
var ex = new DOMException("msg", test_case.name);
assert_equals(ex.name, test_case.name,
"Should be using the passed-in name");
assert_equals(ex.message, "msg",
"Should be using the passed-in message");
assert_equals(ex.code, test_case.code,
"Should have matching legacy code from error names table");
},'new DOMexception("msg", "' + test_case.name + '")');
});
test(function() {
var ex = new DOMException("bar", "UnknownError");
assert_equals(ex.name, "UnknownError", "Should be using the passed-in name");
assert_equals(ex.message, "bar", "Should still be using passed-in message");
assert_equals(ex.code, 0,
"Should have 0 for code for a name in the exception names table with no legacy code");
}, 'new DOMException("bar", "UnknownError")');
</script> </script>

View file

@ -1,4 +1,10 @@
{ {
"html-aria/author-requirements/571-haswarn.html": "The \u201ctextbox\u201d role is unnecessary for an \u201cinput\u201d element that has no \u201clist\u201d attribute and whose type is \u201ctext\u201d.",
"html-aria/author-requirements/572-haswarn.html": "The \u201ctextbox\u201d role is unnecessary for an \u201cinput\u201d element that has no \u201clist\u201d attribute and whose type is \u201ctext\u201d.",
"html-aria/author-requirements/573-haswarn.html": "The \u201ctextbox\u201d role is unnecessary for an \u201cinput\u201d element that has no \u201clist\u201d attribute and whose type is \u201ctext\u201d.",
"html-aria/combobox-autocomplete-list/div-haswarn.html": "The \u201ctextbox\u201d role is unnecessary for an \u201cinput\u201d element that has no \u201clist\u201d attribute and whose type is \u201ctext\u201d.",
"html-aria/host-language/implicit-semantics-checkbox-disparity-haswarn.html": "The \u201ccheckbox\u201d role is unnecessary for element \u201cinput\u201d whose type is \u201ccheckbox\u201d.",
"html-aria/host-language/implicit-semantics-checkbox-role-haswarn.html": "The \u201ccheckbox\u201d role is unnecessary for element \u201cinput\u201d whose type is \u201ccheckbox\u201d.",
"html-rdfa/0019-novalid.html": "Attribute \u201chref\u201d not allowed on element \u201cdiv\u201d in this context.", "html-rdfa/0019-novalid.html": "Attribute \u201chref\u201d not allowed on element \u201cdiv\u201d in this context.",
"html-rdfa/0035-novalid.html": "Attribute \u201chref\u201d not allowed on element \u201cimg\u201d in this context.", "html-rdfa/0035-novalid.html": "Attribute \u201chref\u201d not allowed on element \u201cimg\u201d in this context.",
"html-rdfa/0037-novalid.html": "Attribute \u201chref\u201d not allowed on element \u201cimg\u201d in this context.", "html-rdfa/0037-novalid.html": "Attribute \u201chref\u201d not allowed on element \u201cimg\u201d in this context.",

View file

@ -1,66 +0,0 @@
var EXPECT_BLOCK = true;
var EXPECT_LOAD = false;
window.jsTestIsAsync = true;
window.wasPostTestScriptParsed = true;
var iframe;
function injectFrame(url, shouldBlock) {
window.onload = function() {
iframe = document.createElement('iframe');
iframe.onload = iframeLoaded(shouldBlock);
iframe.src = url;
document.body.appendChild(iframe);
};
}
function iframeLoaded(expectBlock) {
return function(ev) {
var failed = true;
try {
console.log("IFrame load event fired: the IFrame's location is '" + ev.target.contentWindow.location.href + "'.");
if (expectBlock) {
testFailed("The IFrame should have been blocked (or cross-origin). It wasn't.");
failed = true;
} else {
testPassed("The IFrame should not have been blocked. It wasn't.");
failed = false;
}
} catch (ex) {
debug("IFrame load event fired: the IFrame is cross-origin (or was blocked).");
if (expectBlock) {
testPassed("The IFrame should have been blocked (or cross-origin). It was.");
failed = false;
} else {
testFailed("The IFrame should not have been blocked. It was.");
failed = true;
}
}
finishJSTest();
};
}
function injectFrameRedirectingTo(url, shouldBlock) {
injectFrame("/security/contentSecurityPolicy/resources/redir.php?url=" + url, shouldBlock);
}
function injectWorker(url, expectBlock) {
window.onload = function() {
if (expectBlock == EXPECT_BLOCK)
shouldThrow("var w = new Worker('" + url + "');");
else
shouldNotThrow("var w = new Worker('" + url + "');");
finishJSTest();
};
}
function injectSharedWorker(url, expectBlock) {
window.onload = function() {
if (expectBlock == EXPECT_BLOCK)
shouldThrow("var w = new SharedWorker('" + url + "');");
else
shouldNotThrow("var w = new SharedWorker('" + url + "');");
finishJSTest();
};
}

View file

@ -1,2 +0,0 @@
if (window.testRunner)
testRunner.dumpAsText();

View file

@ -1,109 +0,0 @@
var SAME_ORIGIN = true;
var CROSS_ORIGIN = false;
var EXPECT_BLOCK = true;
var EXPECT_LOAD = false;
var SAMEORIGIN_ORIGIN = "http://127.0.0.1:8000";
var CROSSORIGIN_ORIGIN = "http://localhost:8080";
window.jsTestIsAsync = true;
window.wasPostTestScriptParsed = true;
if (window.testRunner)
testRunner.dumpChildFramesAsText();
window.addEventListener("message", function(e) {
if (window.parent != window) {
window.parent.postMessage(e.data, "*");
} else {
if (e.data)
testFailed("The inner IFrame failed.");
else
testPassed("The inner IFrame passed.");
finishJSTest();
}
});
function injectNestedIframe(policy, parent, child, expectation) {
var iframe = document.createElement("iframe");
var url = "/security/contentSecurityPolicy/resources/frame-in-frame.pl?" + "policy=" + policy + "&parent=" + parent + "&child=" + child + "&expectation=" + expectation;
url = (parent == "same" ? SAMEORIGIN_ORIGIN : CROSSORIGIN_ORIGIN) + url;
iframe.src = url;
document.body.appendChild(iframe);
}
function injectIFrame(policy, sameOrigin, expectBlock) {
var iframe = document.createElement("iframe");
iframe.addEventListener("load", iframeLoaded(expectBlock));
iframe.addEventListener("error", iframeLoaded(expectBlock));
var url = "/security/contentSecurityPolicy/resources/frame-ancestors.pl?policy=" + policy;
if (!sameOrigin)
url = CROSSORIGIN_ORIGIN + url;
iframe.src = url;
document.body.appendChild(iframe);
}
function iframeLoaded(expectBlock) {
return function(ev) {
var failed = true;
try {
console.log("IFrame load event fired: the IFrame's location is '" + ev.target.contentWindow.location.href + "'.");
if (expectBlock) {
testFailed("The IFrame should have been blocked (or cross-origin). It wasn't.");
failed = true;
} else {
testPassed("The IFrame should not have been blocked. It wasn't.");
failed = false;
}
} catch (ex) {
debug("IFrame load event fired: the IFrame is cross-origin (or was blocked).");
if (expectBlock) {
testPassed("The IFrame should have been blocked (or cross-origin). It was.");
failed = false;
} else {
testFailed("The IFrame should not have been blocked. It was.");
failed = true;
}
}
if (window.parent != window)
window.parent.postMessage(failed, '*');
else
finishJSTest();
};
}
function crossOriginFrameShouldBeBlocked(policy) {
window.onload = function() {
injectIFrame(policy, CROSS_ORIGIN, EXPECT_BLOCK);
};
}
function crossOriginFrameShouldBeAllowed(policy) {
window.onload = function() {
injectIFrame(policy, CROSS_ORIGIN, EXPECT_LOAD);
};
}
function sameOriginFrameShouldBeBlocked(policy) {
window.onload = function() {
injectIFrame(policy, SAME_ORIGIN, EXPECT_BLOCK);
};
}
function sameOriginFrameShouldBeAllowed(policy) {
window.onload = function() {
injectIFrame(policy, SAME_ORIGIN, EXPECT_LOAD);
};
}
function testNestedIFrame(policy, parent, child, expectation) {
window.onload = function() {
injectNestedIframe(policy, parent == SAME_ORIGIN ? "same" : "cross", child == SAME_ORIGIN ? "same" : "cross", expectation == EXPECT_LOAD ? "Allowed" : "Blocked");
};
}

View file

@ -1,2 +0,0 @@
<meta http-equiv="Content-Security-Policy" content="default-src 'self'"> This page includes an insecure script that alerts "FAIL", but that script is blocked by CSP.
<script src="http://127.0.0.1:8080/security/contentSecurityPolicy/resources/alert-fail.js"></script>

View file

@ -1,54 +0,0 @@
if (window.testRunner) {
testRunner.waitUntilDone();
testRunner.dumpAsText();
testRunner.dumpChildFramesAsText();
}
function testExperimentalPolicy() {
testImpl(true);
}
function test() {
testImpl(false);
}
function testImpl(experimental) {
if (tests.length === 0)
return finishTesting();
var baseURL = "/security/contentSecurityPolicy/";
var current = tests.shift();
var iframe = document.createElement("iframe");
iframe.src = baseURL + "resources/echo-object-data.pl?" +
"experimental=" + (experimental ? "true" : "false") +
"&csp=" + escape(current[1]);
if (current[0])
iframe.src += "&log=PASS.";
else
iframe.src += "&log=FAIL.";
if (current[2])
iframe.src += "&plugin=" + escape(current[2]);
else {
iframe.src += "&plugin=data:application/x-webkit-test-netscape,logifloaded";
}
if (current[3] !== undefined)
iframe.src += "&type=" + escape(current[3]);
else
iframe.src += "&type=application/x-webkit-test-netscape";
iframe.onload = function() {
if (window.internals)
internals.updateLayoutIgnorePendingStylesheetsAndRunPostLayoutTasks(iframe);
testImpl(experimental);
};
document.body.appendChild(iframe);
}
function finishTesting() {
if (window.testRunner) {
setTimeout("testRunner.notifyDone()", 0);
}
return true;
}

View file

@ -1,53 +0,0 @@
if (window.testRunner) {
testRunner.waitUntilDone();
testRunner.dumpAsText();
testRunner.dumpChildFramesAsText();
}
function testPreescapedPolicy() {
testImpl(false, true);
}
function testExperimentalPolicy() {
testImpl(true, false);
}
function test() {
testImpl(false, false);
}
function testImpl(experimental, preescapedPolicy) {
if (tests.length === 0)
return finishTesting();
var baseURL = "/security/contentSecurityPolicy/";
var current = tests.shift();
var iframe = document.createElement("iframe");
var policy = current[1];
if (!preescapedPolicy)
policy = encodeURIComponent(policy);
var scriptToLoad = baseURL + encodeURIComponent(current[2]);
if (current[2].match(/^data:/) || current[2].match(/^https?:/))
scriptToLoad = encodeURIComponent(current[2]);
iframe.src = baseURL + "resources/echo-script-src.pl?" +
"experimental=" + (experimental ? "true" : "false") +
"&should_run=" + encodeURIComponent(current[0]) +
"&csp=" + policy + "&q=" + scriptToLoad;
if (current[3] !== undefined)
iframe.src += "&nonce=" + encodeURIComponent(current[3]);
iframe.onload = function() {
testImpl(experimental, preescapedPolicy);
};
document.body.appendChild(iframe);
}
function finishTesting() {
if (window.testRunner) {
setTimeout("testRunner.notifyDone()", 0);
}
return true;
}

View file

@ -1,62 +0,0 @@
var ReferrerTest = {
NO_REFERRER: "no-referrer",
NO_REFERRER_WHEN_DOWNGRADE: "no-referrer-when-downgrade",
ORIGIN: "origin",
ORIGIN_WHEN_CROSS_ORIGIN: "origin-when-cross-origin",
UNSAFE_URL: "unsafe-url",
INVALID: "invalid",
EMPTY: "",
HTTP: "http",
HTTPS: "https",
bindHandler: function(func) {
window.addEventListener("message", function(e) {
ReferrerTest.referrerResult = undefined;
func(e.data);
finishJSTest();
});
},
base: function(scheme) {
return scheme == "http" ? "http://127.0.0.1:8000/" : "https://127.0.0.1:8443/";
},
generateFrameURL: function(policy, from, to) {
return ReferrerTest.base(from) + "security/contentSecurityPolicy/resources/referrer-test.php?policy=" + policy + "&to=" + to;
},
injectFrame: function(policy, from, to) {
var iframe = document.createElement("iframe");
iframe.src = ReferrerTest.generateFrameURL(policy, from, to);
document.body.appendChild(iframe);
}
};
function expectFullReferrer(policy, from, to) {
ReferrerTest.bindHandler(function(referrer) {
ReferrerTest.referrerResult = referrer;
shouldBeEqualToString("ReferrerTest.referrerResult", ReferrerTest.generateFrameURL(policy, from, to));
});
ReferrerTest.injectFrame(policy, from, to);
}
function expectNoReferrer(policy, from, to) {
ReferrerTest.bindHandler(function(referrer) {
ReferrerTest.referrerResult = referrer;
shouldBeEqualToString("ReferrerTest.referrerResult", "");
});
ReferrerTest.injectFrame(policy, from, to);
}
function expectOriginReferrer(policy, from, to) {
ReferrerTest.bindHandler(function(referrer) {
ReferrerTest.referrerResult = referrer;
shouldBeEqualToString("ReferrerTest.referrerResult", ReferrerTest.base(from));
});
ReferrerTest.injectFrame(policy, from, to);
}
window.wasPostTestScriptParsed = true;
window.jsTestIsAsync = true;

View file

@ -1,41 +0,0 @@
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.dumpChildFramesAsText();
testRunner.setXSSAuditorEnabled(true);
testRunner.waitUntilDone();
}
function testMixedHeader(csp, xssProtection) {
var params = [
'q=<script>alert_assert(String.fromCharCode(0x58,0x53,0x53))<' + '/script>'
];
if (csp != 'unset')
params.push('csp=' + csp);
if (xssProtection == 'allow')
params.push('disable-protection=1');
if (xssProtection == 'block')
params.push('enable-full-block=1');
if (xssProtection == 'filter')
params.push('valid-header=2');
if (xssProtection == 'invalid')
params.push('malformed-header=1');
var url = '/security/xssAuditor/resources/echo-intertag.pl?';
url += params.join('&amp;');
document.write('<p>Testing behavior when "reflected-xss" is set to ' + csp + ', and "X-XSS-Protection" is set to ' + xssProtection + '.');
document.write('<iframe src="' + url + '"></iframe>');
}
function frameLoaded() {
var frame = document.querySelector('iframe');
try {
alert_assert('Loaded ' + frame.contentWindow.location.href + ' into the IFrame.');
} catch (e) {
alert_assert('Loaded cross-origin frame.');
}
testRunner.notifyDone();
}
window.onload = frameLoaded;

View file

@ -1,11 +0,0 @@
<!DOCTYPE html>
<html>
<body>
<div id="result" text="PASS">
FAIL
</div>
<script src="http://127.0.0.1:8000/security/contentSecurityPolicy/resources/script.js"></script>
</body>
</html>

View file

@ -1,18 +0,0 @@
if (window.testRunner)
testRunner.dumpAsText();
function log(msg) {
var txt = document.createTextNode(msg);
document.querySelector('body').appendChild(txt);
document.querySelector('body').appendChild(document.createElement('br'));
}
function injectPolicy(policy) {
var meta = document.createElement('meta');
meta.setAttribute('http-equiv', 'Content-Security-Policy');
meta.setAttribute('content', policy);
document.head.appendChild(meta);
}
if (!document.securityPolicy)
log('FAIL document.securityPolicy is not defined.')

View file

@ -1,13 +0,0 @@
window.jsTestIsAsync = true;
document.addEventListener('securitypolicyviolation', function handleEvent(e) {
window.e = e;
for (key in expectations)
shouldBe('window.e.' + key, JSON.stringify(expectations[key]));
finishJSTest();
});
window.addEventListener('load', function() {
debug('Kicking off the tests:');
run();
});

View file

@ -1,10 +0,0 @@
onconnect = function(event) {
var port = event.ports[0];
try {
var xhr = new XMLHttpRequest;
xhr.open("GET", "http://www1.{{host}}:{{ports[http][0]}}/content-security-policy/blink-contrib/resources/blue.css", true);
port.postMessage("xhr allowed");
} catch (e) {
port.postMessage("xhr blocked");
}
};

View file

@ -1,20 +0,0 @@
<?xml version="1.0"?>
<xsl:stylesheet version="2.0"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns="http://www.w3.org/1999/xhtml"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
exclude-result-prefixes="xhtml xsl xs">
<xsl:output method="xml" version="1.0" encoding="UTF-8" doctype-public="-//W3C//DTD XHTML 1.1//EN" doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" indent="yes"/>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="xhtml:div">
<xsl:copy>
Style sheet applied.
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>

View file

@ -1,19 +0,0 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<script>
//<![CDATA[
if (window.testRunner)
testRunner.dumpAsText();
//]]>
</script>
</head>
<body>
Here is an image:
<img src="../resources/abe.png"/>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

View file

@ -373,8 +373,8 @@ The assertion should not be:
The test assertion is **optional**. It helps the reviewer understand The test assertion is **optional**. It helps the reviewer understand
the goal of the test so that he or she can make sure it is being the goal of the test so that he or she can make sure it is being
tested correctly. Also, in case a problem is found with the test tested correctly. Also, in case a problem is found with the test
later, the testing method (e.g. using 'color' to determine pass/fail) later, the testing method (e.g. using `color` to determine pass/fail)
can be changed (e.g. to using 'background-color') while preserving can be changed (e.g. to using `background-color`) while preserving
the intent of the test (e.g. testing support for ID selectors). the intent of the test (e.g. testing support for ID selectors).
Examples of good test assertions: Examples of good test assertions:

View file

@ -52,7 +52,7 @@ sheet is applied.</p>
Within the test case it is recommended that the case itself indicate Within the test case it is recommended that the case itself indicate
the necessary user style sheet that is required. the necessary user style sheet that is required.
Examples: (code for the cascade.css file) Examples: (code for the [`cascade.css`][cascade-css] file)
``` css ``` css
#cascade /* ID name should match user style sheet file name */ #cascade /* ID name should match user style sheet file name */
@ -66,7 +66,7 @@ The rule ```#cascade``` in the example above is used by the test
page to hide the prerequisite text. The rule name should match the page to hide the prerequisite text. The rule name should match the
user style sheet CSS file name in order to keep this orderly. user style sheet CSS file name in order to keep this orderly.
Examples: (code for the cascade-### XHTML files) Examples: (code for [the `cascade-###.xht` files][cascade-xht])
``` html ``` html
<p id="cascade"> <p id="cascade">
@ -83,3 +83,6 @@ sheet is properly applied.
Please flag test that require user style sheets with the userstyle Please flag test that require user style sheets with the userstyle
flag so people running the tests know that a user style sheet is flag so people running the tests know that a user style sheet is
required. required.
[cascade-css]: https://github.com/w3c/csswg-test/blob/master/css21/cascade/support/cascade.css
[cascade-xht]: https://github.com/w3c/csswg-test/blob/master/css21/cascade/cascade-001.xht

View file

@ -47,8 +47,8 @@ event firing. In some cases it is necessary to delay the screenshot
later than this, for example becase some DOM manipulation is later than this, for example becase some DOM manipulation is
required to set up the desired test conditions. To enable this, the required to set up the desired test conditions. To enable this, the
test may have a `class="reftest-wait"` attribute specified on the root test may have a `class="reftest-wait"` attribute specified on the root
element. This will cause the screenshot to be delayed until the load element. This will cause the screenshot to be delayed until the `load`
event has fired and the reftest-wait class has been removed from the event has fired and the `reftest-wait` class has been removed from the
root element (technical note: the implementation in wptrunner uses root element (technical note: the implementation in wptrunner uses
mutation observers so the screenshot will be triggered in the mutation observers so the screenshot will be triggered in the
microtask checkpoint after the class is removed. Because the harness microtask checkpoint after the class is removed. Because the harness
@ -66,12 +66,12 @@ Multiple references linked from a single file are interpreted as
multiple possible renderings for that file. `<link rel=[mis]match>` multiple possible renderings for that file. `<link rel=[mis]match>`
elements in a reference create further conditions that must be met in elements in a reference create further conditions that must be met in
order for the test to pass. For example, consider a situation where order for the test to pass. For example, consider a situation where
a.html has `<link rel=match href=b.html>` and `<link rel=match `a.html` has `<link rel=match href=b.html>` and `<link rel=match
href=c.html>`, b.html has `<link rel=match href=b1.html>` and c.html href=c.html>`, `b.html` has `<link rel=match href=b1.html>` and `c.html`
has `<link rel=mismatch href=c1.html>`. In this case, to pass we must has `<link rel=mismatch href=c1.html>`. In this case, to pass we must
either have a.html, b.html and b1.html all rendering identically, or either have `a.html`, `b.html` and `b1.html` all rendering identically, or
a.html and c.html rendering identically, but c.html rendering `a.html` and `c.html` rendering identically, but `c.html` rendering
differently from c1.html. differently from `c1.html`.
## Fuzzy Matching ## Fuzzy Matching

View file

@ -24,7 +24,7 @@ may also be used as long as the review is clearly linked.
### Critic ### Critic
[Critic][critic] is a code review tool that is frequently used for [Critic][critic] is a code review tool that is frequently used for
reviewing web-platform-tests sumbissions. Although it has a steeper reviewing web-platform-tests submissions. Although it has a steeper
learning curve than the GitHub tools, it has more features that aid in learning curve than the GitHub tools, it has more features that aid in
conducting non-trivial reviews. conducting non-trivial reviews.
@ -33,13 +33,13 @@ and log (authentication is via GitHub). On the homepage, click "Add
Filter". In the resulting dialog, select the web-platform-tests Filter". In the resulting dialog, select the web-platform-tests
repository and add the path of the folder(s) where you want to review repository and add the path of the folder(s) where you want to review
code, e.g. `/` to review any submissions or `XMLHttpRequest/` to code, e.g. `/` to review any submissions or `XMLHttpRequest/` to
review only submissions in the XHMLHttpRequest directory. Ensure that review only submissions in the `XHMLHttpRequest` directory. Ensure that
your email address is added so that you receive notifications of new your email address is added so that you receive notifications of new
reviews matching your filters, and activity on existing reviews. reviews matching your filters, and activity on existing reviews.
## Labels ## Labels
Pull requests get automatically labelled in the Github repository. Check Pull requests get automatically labelled in the GitHub repository. Check
out the [list of labels in Github][issues] out the [list of labels in Github][issues]
to see the open pull requests for a given specification or a given Working Group. to see the open pull requests for a given specification or a given Working Group.

View file

@ -26,7 +26,7 @@ environment, the [wptrunner](http://github.com/w3c/wptrunner) test runner
can be used. This is a test runner written in Python and designed to can be used. This is a test runner written in Python and designed to
control the browser from the outside using some remote control control the browser from the outside using some remote control
protocol such as WebDriver. This allows it to handle cases such as the protocol such as WebDriver. This allows it to handle cases such as the
browser crashing that connot be handled by an in-browser harness. It browser crashing that cannot be handled by an in-browser harness. It
also has the ability to automatically run both testharness-based tests also has the ability to automatically run both testharness-based tests
and reftests. and reftests.

View file

@ -111,7 +111,7 @@ between attributes will be collapsed to a single space, duplicate
attributes will be removed, optional closing tags will be inserted, attributes will be removed, optional closing tags will be inserted,
and invalid markup will be normalized. If these changes should make and invalid markup will be normalized. If these changes should make
the test inoperable, for example if the test is testing markup error the test inoperable, for example if the test is testing markup error
recovery, add the [flag][requirement-flags] 'asis' to prevent recovery, add the [flag][requirement-flags] `asis` to prevent
re-serialization. This flag will also prevent format conversions so it re-serialization. This flag will also prevent format conversions so it
may be necessary to provide alternate versions of the test in other may be necessary to provide alternate versions of the test in other
formats (XHTML, HTML, etc.) formats (XHTML, HTML, etc.)
@ -262,7 +262,7 @@ the `location` dictionary, which has entries matching the
{{location[host]}} {{location[host]}}
{% endraw %} {% endraw %}
is replaced by hostname:port for the current request. is replaced by `hostname:port` for the current request.
### Tests Requiring Special Headers ### Tests Requiring Special Headers

View file

@ -196,14 +196,14 @@ red to denote failure._
#### Overlapped text #### Overlapped text
Tests of the 'line-height', 'font-size' and similar properties can Tests of the `line-height`, `font-size` and similar properties can
sometimes be devised in such a way that a failure will result in the sometimes be devised in such a way that a failure will result in the
text overlapping. text overlapping.
#### The word "FAIL" #### The word "FAIL"
Some properties lend themselves well to this kind of test, for Some properties lend themselves well to this kind of test, for
example 'quotes' and 'content'. The idea is that if the word "FAIL" example `quotes` and `content`. The idea is that if the word "FAIL"
appears anywhere, something must have gone wrong. appears anywhere, something must have gone wrong.
[Example][fail-example] [Example][fail-example]
@ -219,7 +219,7 @@ shapes. This font is especially useful for testing font and text
properties. Without this font it would be very hard to use the properties. Without this font it would be very hard to use the
overlapping technique with text. overlapping technique with text.
The font's em-square is exactly square. It's ascent and descent is The font's em-square is exactly square. Its ascent and descent is
exactly the size of the em square. This means that the font's extent exactly the size of the em square. This means that the font's extent
is exactly the same as its line-height, meaning that it can be is exactly the same as its line-height, meaning that it can be
exactly aligned with padding, borders, margins, and so forth. exactly aligned with padding, borders, margins, and so forth.
@ -263,9 +263,9 @@ E.g. Good:
``` ```
__If the test uses the Ahem font, make sure the line-height on block __If the test uses the Ahem font, make sure the line-height on block
elements is specified; avoid 'line-height: normal'__. Also, for elements is specified; avoid `line-height: normal`__. Also, for
absolute reliability, the difference between computed line-height absolute reliability, the difference between computed line-height
and computed font-size should be dividable by 2. and computed font-size should be divisible by 2.
E.g. Bad: E.g. Bad:
@ -273,14 +273,14 @@ E.g. Bad:
{font: 1.25em Ahem;} /* computed line-height value is 'normal' */ {font: 1.25em Ahem;} /* computed line-height value is 'normal' */
{font: 20px Ahem;} /* computed line-height value is 'normal' */ {font: 20px Ahem;} /* computed line-height value is 'normal' */
{font-size: 25px; line-height: 50px;} /* the difference between {font-size: 25px; line-height: 50px;} /* the difference between
computed line-height and computed font-size is not dividable by 2. */ computed line-height and computed font-size is not divisible by 2. */
``` ```
E.g. Good: E.g. Good:
``` css ``` css
{font-size: 25px; line-height: 51px;} /* the difference between {font-size: 25px; line-height: 51px;} /* the difference between
computed line-height and computed font-size is dividable by 2. */ computed line-height and computed font-size is divisible by 2. */
``` ```
[Example test using Ahem][ahem-example] [Example test using Ahem][ahem-example]
@ -347,11 +347,9 @@ In practice, the important thing to decide is when to be methodical
and when to simply test, in an ad hoc fashion, a cross section of and when to simply test, in an ad hoc fashion, a cross section of
the possibilities. the possibilities.
This example is a methodical test of the :not() pseudo-class with This is an [example][methodical-test] of a methodical test of the
each attribute selector in turn, first for long values and then for `:not()` pseudo-class with each attribute selector in turn, first
short values: for long values and then for short values.
http://www.hixie.ch/tests/adhoc/css/selectors/not/010.xml
### Overlapping ### Overlapping
@ -399,7 +397,7 @@ As mentioned many times in this document, red indicates a bug, so
nothing should ever be red in a test. nothing should ever be red in a test.
There is one important exception to this rule... the test for the There is one important exception to this rule... the test for the
'red' value for the color properties! `red` value for the color properties!
### Unobvious tests ### Unobvious tests
@ -436,3 +434,4 @@ The last [subtest on this page][unobvious-test] shows this problem.
[download-ahem]: http://www.w3.org/Style/CSS/Test/Fonts/Ahem/AHEM____.TTF [download-ahem]: http://www.w3.org/Style/CSS/Test/Fonts/Ahem/AHEM____.TTF
[long-test]: http://www.hixie.ch/tests/evil/mixed/lineheight3.html [long-test]: http://www.hixie.ch/tests/evil/mixed/lineheight3.html
[unobvious-test]: http://www.w3.org/Style/CSS/Test/CSS1/current/sec525.htm [unobvious-test]: http://www.w3.org/Style/CSS/Test/CSS1/current/sec525.htm
[methodical-test]: http://www.hixie.ch/tests/adhoc/css/selectors/not/010.xml

View file

@ -106,7 +106,7 @@ function test_after(child, nodeName, innerHTML) {
parent.appendChild(document.createTextNode('1')); parent.appendChild(document.createTextNode('1'));
parent.appendChild(y); parent.appendChild(y);
child.after(x, '2'); child.after(x, '2');
var expected = innerHTML + '<x></x>12<y></y>'; var expected = innerHTML + '<x></x>21<y></y>';
assert_equals(parent.innerHTML, expected); assert_equals(parent.innerHTML, expected);
}, nodeName + '.after() with one sibling of child and text as arguments.'); }, nodeName + '.after() with one sibling of child and text as arguments.');

View file

@ -12,16 +12,14 @@
<div id="log">This test requires JavaScript.</div> <div id="log">This test requires JavaScript.</div>
<script> <script>
var docType = "html"; // Only run tests suitable for HTML async_test(function() {
var frame = document.createElement("iframe");
frame.onload = this.step_func_done(init);
frame.src = "/dom/nodes/ParentNode-querySelector-All-content.html#target";
document.body.appendChild(frame);
});
var frame = document.createElement("iframe"), function init(e) {
doc;
frame.onload = init;
frame.src = "/dom/nodes/ParentNode-querySelector-All-content.html#target";
document.body.appendChild(frame);
function init() {
/* /*
* This test suite tests Selectors API methods in 4 different contexts: * This test suite tests Selectors API methods in 4 different contexts:
* 1. Document node * 1. Document node
@ -40,13 +38,15 @@ function init() {
* The level2-lib.js file contains all the common test functions for running each of the aforementioned tests * The level2-lib.js file contains all the common test functions for running each of the aforementioned tests
*/ */
var docType = "html"; // Only run tests suitable for HTML
// Prepare the nodes for testing // Prepare the nodes for testing
doc = frame.contentDocument; // Document Node tests var doc = e.target.contentDocument; // Document Node tests
var element = doc.getElementById("root"); // In-document Element Node tests var element = doc.getElementById("root"); // In-document Element Node tests
//Setup the namespace tests //Setup the namespace tests
setupSpecialElements(element); setupSpecialElements(doc, element);
var outOfScope = element.cloneNode(true); // Append this to the body before running the in-document var outOfScope = element.cloneNode(true); // Append this to the body before running the in-document
// Element tests, but after running the Document tests. This // Element tests, but after running the Document tests. This

View file

@ -10,17 +10,14 @@
<div id="log">This test requires JavaScript.</div> <div id="log">This test requires JavaScript.</div>
<script> <script>
var testType = TEST_QSA; async_test(function() {
var docType = "html"; // Only run tests suitable for HTML var frame = document.createElement("iframe");
frame.onload = this.step_func_done(init);
frame.src = "ParentNode-querySelector-All-content.html#target";
document.body.appendChild(frame);
});
var frame = document.createElement("iframe"), function init(e) {
doc;
frame.onload = init;
frame.src = "ParentNode-querySelector-All-content.html#target";
document.body.appendChild(frame);
function init() {
/* /*
* This test suite tests Selectors API methods in 4 different contexts: * This test suite tests Selectors API methods in 4 different contexts:
* 1. Document node * 1. Document node
@ -55,13 +52,16 @@ function init() {
* The ParentNode-querySelector-All.js file contains all the common test functions for running each of the aforementioned tests * The ParentNode-querySelector-All.js file contains all the common test functions for running each of the aforementioned tests
*/ */
var testType = TEST_QSA;
var docType = "html"; // Only run tests suitable for HTML
// Prepare the nodes for testing // Prepare the nodes for testing
doc = frame.contentDocument; // Document Node tests var doc = e.target.contentDocument; // Document Node tests
var element = doc.getElementById("root"); // In-document Element Node tests var element = doc.getElementById("root"); // In-document Element Node tests
//Setup the namespace tests //Setup the namespace tests
setupSpecialElements(element); setupSpecialElements(doc, element);
var outOfScope = element.cloneNode(true); // Append this to the body before running the in-document var outOfScope = element.cloneNode(true); // Append this to the body before running the in-document
// Element tests, but after running the Document tests. This // Element tests, but after running the Document tests. This
@ -89,10 +89,10 @@ function init() {
runSpecialSelectorTests("Fragment", fragment); runSpecialSelectorTests("Fragment", fragment);
runSpecialSelectorTests("In-document Element", element); runSpecialSelectorTests("In-document Element", element);
verifyStaticList("Document", doc); verifyStaticList("Document", doc, doc);
verifyStaticList("Detached Element", detached); verifyStaticList("Detached Element", doc, detached);
verifyStaticList("Fragment", fragment); verifyStaticList("Fragment", doc, fragment);
verifyStaticList("In-document Element", element); verifyStaticList("In-document Element", doc, element);
runInvalidSelectorTest("Document", doc, invalidSelectors); runInvalidSelectorTest("Document", doc, invalidSelectors);
runInvalidSelectorTest("Detached Element", detached, invalidSelectors); runInvalidSelectorTest("Detached Element", detached, invalidSelectors);

View file

@ -3,7 +3,7 @@
/* /*
* Create and append special elements that cannot be created correctly with HTML markup alone. * Create and append special elements that cannot be created correctly with HTML markup alone.
*/ */
function setupSpecialElements(parent) { function setupSpecialElements(doc, parent) {
// Setup null and undefined tests // Setup null and undefined tests
parent.appendChild(doc.createElement("null")); parent.appendChild(doc.createElement("null"));
parent.appendChild(doc.createElement("undefined")); parent.appendChild(doc.createElement("undefined"));
@ -75,7 +75,7 @@ function interfaceCheck(type, obj) {
* Verify that the NodeList returned by querySelectorAll is static and and that a new list is created after * Verify that the NodeList returned by querySelectorAll is static and and that a new list is created after
* each call. A static list should not be affected by subsequent changes to the DOM. * each call. A static list should not be affected by subsequent changes to the DOM.
*/ */
function verifyStaticList(type, root) { function verifyStaticList(type, doc, root) {
var pre, post, preLength; var pre, post, preLength;
test(function() { test(function() {

View file

@ -12,17 +12,14 @@
<div id="log">This test requires JavaScript.</div> <div id="log">This test requires JavaScript.</div>
<script><![CDATA[ <script><![CDATA[
var testType = TEST_QSA; async_test(function() {
var docType = "xhtml"; // Only run tests suitable for XHTML var frame = document.createElement("iframe");
frame.onload = this.step_func_done(init);
frame.src = "ParentNode-querySelector-All-content.xht#target";
document.body.appendChild(frame);
})
var frame = document.createElement("iframe"), function init(e) {
doc;
frame.onload = init;
frame.src = "ParentNode-querySelector-All-content.xht#target";
document.body.appendChild(frame);
function init() {
/* /*
* This test suite tests Selectors API methods in 4 different contexts: * This test suite tests Selectors API methods in 4 different contexts:
* 1. Document node * 1. Document node
@ -57,13 +54,16 @@ function init() {
* The ParentNode-querySelector-All.js file contains all the common test functions for running each of the aforementioned tests * The ParentNode-querySelector-All.js file contains all the common test functions for running each of the aforementioned tests
*/ */
var testType = TEST_QSA;
var docType = "xhtml"; // Only run tests suitable for XHTML
// Prepare the nodes for testing // Prepare the nodes for testing
doc = frame.contentDocument; // Document Node tests var doc = e.target.contentDocument; // Document Node tests
var element = doc.getElementById("root"); // In-document Element Node tests var element = doc.getElementById("root"); // In-document Element Node tests
//Setup the namespace tests //Setup the namespace tests
setupSpecialElements(element); setupSpecialElements(doc, element);
var outOfScope = element.cloneNode(true); // Append this to the body before running the in-document var outOfScope = element.cloneNode(true); // Append this to the body before running the in-document
// Element tests, but after running the Document tests. This // Element tests, but after running the Document tests. This
@ -91,10 +91,10 @@ function init() {
runSpecialSelectorTests("Fragment", fragment); runSpecialSelectorTests("Fragment", fragment);
runSpecialSelectorTests("In-document Element", element); runSpecialSelectorTests("In-document Element", element);
verifyStaticList("Document", doc); verifyStaticList("Document", doc, doc);
verifyStaticList("Detached Element", detached); verifyStaticList("Detached Element", doc, detached);
verifyStaticList("Fragment", fragment); verifyStaticList("Fragment", doc, fragment);
verifyStaticList("In-document Element", element); verifyStaticList("In-document Element", doc, element);
runInvalidSelectorTest("Document", doc, invalidSelectors); runInvalidSelectorTest("Document", doc, invalidSelectors);
runInvalidSelectorTest("Detached Element", detached, invalidSelectors); runInvalidSelectorTest("Detached Element", detached, invalidSelectors);

View file

@ -0,0 +1,54 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Rendering requirements test (suggested default rendering): fieldset min-width is overridable</title>
<link rel="author" title="Chris Rebert" href="http://chrisrebert.com">
<link rel="help" href="https://html.spec.whatwg.org/multipage/rendering.html#the-fieldset-and-legend-elements">
<link rel="help" href="http://drafts.csswg.org/css2/visudet.html#min-max-widths">
<link rel="help" href="http://drafts.csswg.org/css-sizing/#width-height-keywords">
<link rel="match" href="ref.html">
<meta name="flags" content="">
<meta name="assert" content="fieldset's default min-width should be overridable since it's not !important and not spec'd to be non-overridable">
<style>
body {
margin: 10px;
}
#cover {
background-color: green;
position: absolute;
left: 10px;
top: 10px;
height: 100px;
width: 100px;
z-index: 2;
}
fieldset {
min-width: 0;/* property under test */
/* zero these out so it renders more like a div element */
border: none;
margin: 0;
padding: 0;
}
.outer {
width: 100px;
}
.inner {
background-color: red;
color: red;
height: 100px;
overflow: scroll;
white-space: nowrap;
}
</style>
</head>
<body>
<div class="outer">
<fieldset>
<div class="inner">a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a</div>
</fieldset>
</div>
<p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
<div id="cover"></div>
</body>
</html>

View file

@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Rendering requirements Reftest Reference</title>
<style>
body {
margin: 10px;
}
div {
background-color: green;
height: 100px;
width: 100px;
}
</style>
</head>
<body>
<div></div>
<p>Test passes if there is a <strong>filled green square</strong> and <strong>no red</strong>.</p>
</body>
</html>

View file

@ -1,6 +1,6 @@
<!DOCTYPE html> <!DOCTYPE html>
<meta charset="utf-8"> <meta charset="utf-8">
<title>The constraint validation API Test: element.validity.patternMismatch</title> <title>The constraint validation API Test: element.validity.stepMismatch</title>
<link rel="author" title="Intel" href="http://www.intel.com/"> <link rel="author" title="Intel" href="http://www.intel.com/">
<link rel="help" href="https://html.spec.whatwg.org/multipage/#dom-validitystate-stepmismatch"> <link rel="help" href="https://html.spec.whatwg.org/multipage/#dom-validitystate-stepmismatch">
<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-constraint-validation-api"> <link rel="help" href="https://html.spec.whatwg.org/multipage/#the-constraint-validation-api">

View file

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>File input descendants of disabled fieldsets</title>
<link rel="author" title="Chris Rebert" href="http://chrisrebert.com" />
<link rel="help" href="https://html.spec.whatwg.org/multipage/#attr-fieldset-disabled" />
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
</head>
<body>
<div id="log"></div>
<form>
<fieldset id="fs" disabled="disabled">
<input id="myfile" type="file" />
</fieldset>
</form>
<script>
test(function () {
assert_true(document.getElementById('fs').disabled, "disabled fieldset should be disabled");
assert_false(document.getElementById('myfile').willValidate, "form control descendant of disabled fieldset that is not also a descendant of a legend should be disabled");
}, "A file input without a disabled attribute that is a descendant of a disabled fieldset should be disabled (modulo legend-related complications that don't apply here)");
</script>
</body>
</html>

View file

@ -121,4 +121,8 @@
"The 'form' property for a label without a form owner should return null."); "The 'form' property for a label without a form owner should return null.");
}, "Check that the labels property of a form control with no label returns a zero-length NodeList."); }, "Check that the labels property of a form control with no label returns a zero-length NodeList.");
// htmlFor attribute
test(function () {
assert_equals(document.getElementById("lbl2").htmlFor, "testx");
}, "A label's htmlFor attribute must reflect the for content attribute");
</script> </script>

View file

@ -0,0 +1,23 @@
<!DOCTYPE html>
<meta charset="utf-8">
<title>HTMLLegendElement Test: form</title>
<link rel="author" title="Intel" href="http://www.intel.com/">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<div id="log"></div>
<div style="display:none">
<form id="testform">
<legend id="testlegend">radio</legend>
</form>
</div>
<script>
test(function () {
var legendEle = document.getElementById("testlegend");
assert_equals(legendEle.form, null);
}, "Check if legend.form return null when legend has no fieldset element as its parent");
</script>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: audio-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: audio-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: fetch-request
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: fetch-request
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: form-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: form-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: iframe-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: iframe-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: img-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: img-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: link-css-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: link-css-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: link-prefetch-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: link-prefetch-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: object-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: object-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: picture-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: picture-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: script-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: script-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: video-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: video-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: worker-request
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: worker-request
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: xhr-request
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,10 +1,12 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp <meta name="assert" content="opt_in_method: http-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
@ -14,30 +16,10 @@
expectation: allowed"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: http-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: xhr-request
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -0,0 +1,40 @@
<!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html>
<head>
<title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp
origin: same-host-wss
source_scheme: https
context_nesting: top-level
redirection: keep-scheme-redirect
subresource: websocket-request
expectation: allowed">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/mixed-content/generic/common.js"></script>
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head>
<body>
<script>
MixedContentTestCase(
{
"opt_in_method": "http-csp",
"origin": "same-host-wss",
"source_scheme": "https",
"context_nesting": "top-level",
"redirection": "keep-scheme-redirect",
"subresource": "websocket-request",
"expectation": "allowed"
},
document.querySelector("meta[name=assert]").content,
new SanityChecker()
).start();
</script>
<div id="log"></div>
</body>
</html>

View file

@ -0,0 +1,40 @@
<!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html>
<head>
<title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: http-csp
origin: same-host-wss
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: websocket-request
expectation: allowed">
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/mixed-content/generic/common.js"></script>
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head>
<body>
<script>
MixedContentTestCase(
{
"opt_in_method": "http-csp",
"origin": "same-host-wss",
"source_scheme": "https",
"context_nesting": "top-level",
"redirection": "no-redirect",
"subresource": "websocket-request",
"expectation": "allowed"
},
document.querySelector("meta[name=assert]").content,
new SanityChecker()
).start();
</script>
<div id="log"></div>
</body>
</html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: audio-tag subresource: audio-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: audio-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: fetch-request subresource: fetch-request
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: fetch-request
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: form-tag subresource: form-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: form-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: iframe-tag subresource: iframe-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: iframe-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: img-tag subresource: img-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: img-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: link-css-tag subresource: link-css-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: link-css-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: link-prefetch-tag subresource: link-prefetch-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: link-prefetch-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: object-tag subresource: object-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: object-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: picture-tag subresource: picture-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: picture-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: script-tag subresource: script-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: script-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

View file

@ -1,43 +1,25 @@
<!DOCTYPE html> <!DOCTYPE html>
<!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.debug.html.template. --> <!-- DO NOT EDIT! Generated by mixed-content/generic/tools/generate.py using mixed-content/generic/template/test.release.html.template. -->
<html> <html>
<head> <head>
<title>Mixed-Content: Allowed content</title> <title>Mixed-Content: Allowed content</title>
<meta charset='utf-8'> <meta charset='utf-8'>
<meta name="description" content="Test behavior of allowed content."> <meta name="description" content="Test behavior of allowed content.">
<link rel="author" title="Kristijan Burnik" href="burnik@chromium.org">
<link rel="help" href="http://www.w3.org/TR/mixed-content/">
<meta name="assert" content="opt_in_method: meta-csp <meta name="assert" content="opt_in_method: meta-csp
origin: same-host-https origin: same-host-https
source_scheme: https source_scheme: https
context_nesting: top-level context_nesting: top-level
redirection: no-redirect redirection: no-redirect
subresource: video-tag subresource: video-tag
expectation: allowed"><meta http-equiv="Content-Security-Policy" content="block-all-mixed-content"> expectation: allowed">
<script src="/resources/testharness.js"></script> <script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script> <script src="/resources/testharnessreport.js"></script>
<!-- Common global functions for mixed-content tests. -->
<script src="/mixed-content/generic/common.js"></script> <script src="/mixed-content/generic/common.js"></script>
<!-- The original specification JSON for validating the scenario. -->
<script src="/mixed-content/spec_json.js"></script>
<!-- Internal checking of the tests -->
<script src="/mixed-content/generic/sanity-checker.js"></script>
<!-- Simple wrapper API for all mixed-content test cases. -->
<script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script> <script src="/mixed-content/generic/mixed-content-test-case.js?pipe=sub"></script>
</head> </head>
<body> <body>
<h1>Allowed content</h1>
<h2>Test behavior of allowed content.</h2>
<pre>opt_in_method: meta-csp
origin: same-host-https
source_scheme: https
context_nesting: top-level
redirection: no-redirect
subresource: video-tag
expectation: allowed</pre>
<p>See <a href="http://www.w3.org/TR/mixed-content/" target="_blank">specification</a>
details for this test.</p>
<div id="log"></div>
<script> <script>
MixedContentTestCase( MixedContentTestCase(
{ {
@ -53,5 +35,6 @@
new SanityChecker() new SanityChecker()
).start(); ).start();
</script> </script>
<div id="log"></div>
</body> </body>
</html> </html>

Some files were not shown because too many files have changed in this diff Show more