mirror of
https://github.com/classilla/tenfourfox.git
synced 2024-10-25 22:28:27 +00:00
259 lines
6.7 KiB
JSON
259 lines
6.7 KiB
JSON
{
|
|
"specification": [
|
|
{
|
|
"name": "optionally-blockable",
|
|
"title": "Optionally-blockable content",
|
|
"description": "Test behavior of optionally-blockable content",
|
|
"specification_url": "http://www.w3.org/TR/mixed-content/#category-optionally-blockable",
|
|
"test_expansion": [
|
|
{
|
|
"name": "opt-in-blocks",
|
|
"expansion": "default",
|
|
"source_scheme": "https",
|
|
"opt_in_method": ["http-csp", "meta-csp"],
|
|
"context_nesting": "top-level",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": [],
|
|
"optionally-blockable": "*"
|
|
},
|
|
"origin": ["cross-origin-http", "same-host-http"],
|
|
"expectation": "blocked"
|
|
},
|
|
{
|
|
"name": "no-opt-in-allows",
|
|
"expansion": "default",
|
|
"source_scheme": "https",
|
|
"opt_in_method": "no-opt-in",
|
|
"context_nesting": "top-level",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": [],
|
|
"optionally-blockable": "*"
|
|
},
|
|
"origin": ["cross-origin-http", "same-host-http"],
|
|
"expectation": "allowed"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "blockable",
|
|
"title": "Blockable content",
|
|
"description": "Test behavior of blockable content.",
|
|
"specification_url": "http://www.w3.org/TR/mixed-content/#category-blockable",
|
|
"test_expansion": [
|
|
{
|
|
"name": "opt-in-blocks",
|
|
"expansion": "default",
|
|
"source_scheme": "https",
|
|
"opt_in_method": ["http-csp", "meta-csp"],
|
|
"context_nesting": "top-level",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": "*",
|
|
"optionally-blockable": []
|
|
},
|
|
"origin": ["cross-origin-http", "same-host-http"],
|
|
"expectation": "blocked"
|
|
},
|
|
{
|
|
"name": "no-opt-in-blocks",
|
|
"expansion": "default",
|
|
"source_scheme": "https",
|
|
"opt_in_method": "no-opt-in",
|
|
"context_nesting": "top-level",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": "*",
|
|
"optionally-blockable": []
|
|
},
|
|
"origin": ["cross-origin-http", "same-host-http"],
|
|
"expectation": "blocked"
|
|
},
|
|
{
|
|
"name": "ws-downgrade-blocks",
|
|
"expansion": "default",
|
|
"source_scheme": "https",
|
|
"opt_in_method": ["no-opt-in", "http-csp", "meta-csp"],
|
|
"context_nesting": "top-level",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": "websocket-request",
|
|
"optionally-blockable": []
|
|
},
|
|
"origin": ["cross-origin-ws", "same-host-ws"],
|
|
"expectation": "blocked"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "allowed",
|
|
"title": "Allowed content",
|
|
"description": "Test behavior of allowed content.",
|
|
"specification_url": "http://www.w3.org/TR/mixed-content/",
|
|
"test_expansion": [
|
|
{
|
|
"name": "allowed",
|
|
"expansion": "default",
|
|
"source_scheme": "https",
|
|
"opt_in_method": "*",
|
|
"context_nesting": "top-level",
|
|
"redirection": ["no-redirect", "keep-scheme-redirect"],
|
|
"subresource": {
|
|
"blockable": "*",
|
|
"optionally-blockable": "*"
|
|
},
|
|
"origin": ["same-host-https"],
|
|
"expectation": "allowed"
|
|
},
|
|
{
|
|
"name": "websocket-allowed",
|
|
"expansion": "default",
|
|
"source_scheme": "https",
|
|
"opt_in_method": "*",
|
|
"context_nesting": "top-level",
|
|
"redirection": ["no-redirect", "keep-scheme-redirect"],
|
|
"subresource": {
|
|
"blockable": "websocket-request",
|
|
"optionally-blockable": []
|
|
},
|
|
"origin": ["same-host-wss"],
|
|
"expectation": "allowed"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
|
|
"excluded_tests": [
|
|
{
|
|
"name": "Redundant-subresources",
|
|
"expansion": "*",
|
|
"source_scheme": "*",
|
|
"opt_in_method": "*",
|
|
"context_nesting": "*",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": [
|
|
"a-tag"
|
|
],
|
|
"optionally-blockable": []
|
|
},
|
|
"origin": "*",
|
|
"expectation": "*"
|
|
},
|
|
{
|
|
"name": "Skip-origins-not-applicable-to-websockets",
|
|
"expansion": "*",
|
|
"source_scheme": "*",
|
|
"opt_in_method": "*",
|
|
"context_nesting": "*",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": [
|
|
"websocket-request"
|
|
],
|
|
"optionally-blockable": []
|
|
},
|
|
"origin": [
|
|
"same-host-https",
|
|
"same-host-http",
|
|
"cross-origin-https",
|
|
"cross-origin-http"
|
|
],
|
|
"expectation": "*"
|
|
},
|
|
{
|
|
"name": "TODO-opt-in-method-img-cross-origin",
|
|
"expansion": "*",
|
|
"source_scheme": "*",
|
|
"opt_in_method": "img-crossorigin",
|
|
"context_nesting": "*",
|
|
"redirection": "*",
|
|
"subresource": {
|
|
"blockable": "*",
|
|
"optionally-blockable": "*"
|
|
},
|
|
"origin": "*",
|
|
"expectation": "*"
|
|
},
|
|
{
|
|
"name": "Skip-redundant-for-opt-in-method",
|
|
"expansion": "*",
|
|
"source_scheme": "*",
|
|
"opt_in_method": [
|
|
"meta-csp",
|
|
"img-crossorigin"
|
|
],
|
|
"context_nesting": "*",
|
|
"redirection": ["keep-scheme-redirect", "swap-scheme-redirect"],
|
|
"subresource": {
|
|
"blockable": "*",
|
|
"optionally-blockable": "*"
|
|
},
|
|
"origin": "*",
|
|
"expectation": "*"
|
|
}
|
|
],
|
|
|
|
"test_expansion_schema": {
|
|
"expansion": [
|
|
"default",
|
|
"override"
|
|
],
|
|
"source_scheme": [
|
|
"http",
|
|
"https"
|
|
],
|
|
"opt_in_method": [
|
|
"no-opt-in",
|
|
"http-csp",
|
|
"meta-csp",
|
|
"img-crossorigin"
|
|
],
|
|
"redirection": [
|
|
"no-redirect",
|
|
"keep-scheme-redirect",
|
|
"swap-scheme-redirect"
|
|
],
|
|
"context_nesting": [
|
|
"top-level",
|
|
"sub-level"
|
|
],
|
|
"origin": [
|
|
"same-host-https",
|
|
"same-host-http",
|
|
"cross-origin-https",
|
|
"cross-origin-http",
|
|
"same-host-wss",
|
|
"same-host-ws",
|
|
"cross-origin-wss",
|
|
"cross-origin-ws"
|
|
],
|
|
"subresource": {
|
|
"blockable": [
|
|
"iframe-tag",
|
|
"script-tag",
|
|
"link-css-tag",
|
|
"form-tag",
|
|
"xhr-request",
|
|
"worker-request",
|
|
"fetch-request",
|
|
"a-tag",
|
|
"object-tag",
|
|
"picture-tag",
|
|
"websocket-request"
|
|
],
|
|
"optionally-blockable": [
|
|
"img-tag",
|
|
"audio-tag",
|
|
"video-tag",
|
|
"link-prefetch-tag"
|
|
]
|
|
},
|
|
"expectation": [
|
|
"allowed",
|
|
"blocked"
|
|
]
|
|
}
|
|
}
|