diff options
Diffstat (limited to 'testing/web-platform/tests/xhr/resources/access-control-preflight-request-header-sorted.py')
-rw-r--r-- | testing/web-platform/tests/xhr/resources/access-control-preflight-request-header-sorted.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/testing/web-platform/tests/xhr/resources/access-control-preflight-request-header-sorted.py b/testing/web-platform/tests/xhr/resources/access-control-preflight-request-header-sorted.py new file mode 100644 index 0000000000..4e708a9d6b --- /dev/null +++ b/testing/web-platform/tests/xhr/resources/access-control-preflight-request-header-sorted.py @@ -0,0 +1,18 @@ +def main(request, response): + response.headers.set(b'Cache-Control', b'no-store') + response.headers.set(b'Access-Control-Allow-Origin', + request.headers.get(b'origin')) + + headers = b'x-custom-s,x-custom-test,x-custom-u,x-custom-ua,x-custom-v' + if request.method == u'OPTIONS': + response.headers.set(b'Access-Control-Max-Age', b'0') + response.headers.set(b'Access-Control-Allow-Headers', headers) + # Access-Control-Request-Headers should be sorted. + if headers != request.headers.get(b'Access-Control-Request-Headers'): + response.status = 400 + else: + if request.headers.get(b'x-custom-s'): + response.content = b'PASS' + else: + response.status = 400 + response.content = b'FAIL' |