зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1504103 [wpt PR 13849] - Fetch: Access-Control-Expose-Headers parsing, a=testonly
Automatic update from web-platform-testsFetch: Access-Control-Expose-Headers parsing See https://github.com/whatwg/fetch/issues/814 for context. -- wpt-commits: 645c0e8a5c028a613e7ad1732834100dbe946fc7 wpt-pr: 13849
This commit is contained in:
Родитель
3b024bc291
Коммит
e75d5c6f8a
|
@ -1,13 +1,15 @@
|
|||
function exposeTest(resource, desc) {
|
||||
const url = new URL("resources/" + resource, location.href).href.replace("://", "://élève.");
|
||||
promise_test(() => fetch("resources/access-control-expose-headers.json").then(res => res.json()).then(runTests), "Loading JSON…");
|
||||
|
||||
promise_test(() => {
|
||||
return fetch(url).then(res => {
|
||||
assert_equals(res.headers.get("content-language"), "sure")
|
||||
assert_equals(res.headers.get("x-custom"), null);
|
||||
})
|
||||
}, "Access-Control-Expose-Headers parsing: " + desc);
|
||||
function runTests(allTestData) {
|
||||
allTestData.forEach(testData => {
|
||||
const encodedInput = encodeURIComponent(testData.input);
|
||||
promise_test(() => {
|
||||
const relativeURL = "resources/expose-headers.py?expose=" + encodedInput,
|
||||
url = new URL(relativeURL, location.href).href.replace("://", "://élève.");
|
||||
return fetch(url).then(res => {
|
||||
assert_equals(res.headers.get("content-language"), "mkay");
|
||||
assert_equals(res.headers.get("bb-8"), (testData.exposed ? "hey" : null));
|
||||
});
|
||||
}, "Parsing: " + encodedInput);
|
||||
})
|
||||
}
|
||||
|
||||
exposeTest("access-control-expose-headers-parsing.asis", "#1");
|
||||
exposeTest("access-control-expose-headers-parsing-2.asis", "#2")
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
HTTP/1.1 200 OK
|
||||
Access-Control-Allow-Origin: *
|
||||
Access-Control-Expose-Headers: not valid
|
||||
Access-Control-Expose-Headers: x-custom
|
||||
X-Custom: test
|
||||
Content-Language: sure
|
||||
|
||||
TEST
|
|
@ -1,7 +0,0 @@
|
|||
HTTP/1.1 200 OK
|
||||
Access-Control-Allow-Origin: *
|
||||
Access-Control-Expose-Headers: not valid, x-custom
|
||||
X-Custom: test
|
||||
Content-Language: sure
|
||||
|
||||
TEST
|
|
@ -0,0 +1,62 @@
|
|||
[
|
||||
{
|
||||
"input": "access-control-expose-headers: BB-8",
|
||||
"exposed": true
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: bb-8,,@#$#%%&^&^*()()11!",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: bb-8, no no",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: @#$#%%&^&^*()()11!,bb-8",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: bb-8\r\nAccess-Control-Expose-Headers: no",
|
||||
"exposed": true
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: bb-8\r\nAccess-Control-Expose-Headers: no no",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: no\r\nAccess-Control-Expose-Headers: bb-8",
|
||||
"exposed": true
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers:\r\nAccess-Control-Expose-Headers: bb-8",
|
||||
"exposed": true
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: ,bb-8",
|
||||
"exposed": true
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: bb-8\u000C",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: bb-8\u000B",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: bb-8\u000B,bb-8",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: 'bb-8'",
|
||||
"exposed": false
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: 'bb-8',bb-8",
|
||||
"exposed": true
|
||||
},
|
||||
{
|
||||
"input": "Access-Control-Expose-Headers: \"bb-8\",bb-8",
|
||||
"exposed": false
|
||||
}
|
||||
]
|
|
@ -0,0 +1,10 @@
|
|||
def main(request, response):
|
||||
response.add_required_headers = False
|
||||
output = "HTTP/1.1 221 ALL YOUR BASE BELONG TO H1\r\n"
|
||||
output += "Access-Control-Allow-Origin: *\r\n"
|
||||
output += "BB-8: hey\r\n"
|
||||
output += "Content-Language: mkay\r\n"
|
||||
output += request.GET.first("expose") + "\r\n"
|
||||
output += "\r\n"
|
||||
response.writer.write(output)
|
||||
response.close_connection = True
|
Загрузка…
Ссылка в новой задаче