1
0
Fork 0
firefox/testing/web-platform/tests/xhr/resources/no-custom-header-on-preflight.py
Daniel Baumann 5e9a113729
Adding upstream version 140.0.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
2025-06-25 09:37:52 +02:00

27 lines
981 B
Python

def main(request, response):
def getState(token):
server_state = request.server.stash.take(token)
if not server_state:
return b"Uninitialized"
return server_state
def setState(state, token):
request.server.stash.put(token, state)
response.headers.set(b"Access-Control-Allow-Origin", b"*")
response.headers.set(b"Access-Control-Allow-Headers", b"x-test")
response.headers.set(b"Access-Control-Max-Age", 0)
token = request.GET.first(b"token", None)
if request.method == u"OPTIONS":
if request.headers.get(b"x-test"):
response.content = b"FAIL: Invalid header in preflight request."
response.status = 400
else:
setState(b"PASS", token)
else:
if request.headers.get(b"x-test"):
response.content = getState(token)
else:
response.content = b"FAIL: X-Test header missing in request"
response.status = 400