aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2013-02-26 16:18:44 -0800
committerAlon Zakai <alonzakai@gmail.com>2013-02-26 16:18:44 -0800
commit6693e8ca0509fbc6ca3708c44dc5f7ad113bfb99 (patch)
treeb387c5119836ea3a48109fb512dd4dc9fb1b0b8d
parentdf7d3ce735c3c1f62e95454c6e3b9d4026c3c02e (diff)
parent0aaf540cae8d36844b0aa683ab84fdc50ce3ceab (diff)
Merge pull request #871 from ysangkok/chrome-fix
bin xhr sync test: add OPTIONS verb so that CORS works in Chrome. also use OOP
-rwxr-xr-xtests/runner.py12
1 files changed, 7 insertions, 5 deletions
diff --git a/tests/runner.py b/tests/runner.py
index 4c41c72e..d4ec2501 100755
--- a/tests/runner.py
+++ b/tests/runner.py
@@ -10520,7 +10520,6 @@ elif 'browser' in str(sys.argv):
def chunked_server(support_byte_ranges):
class ChunkedServerHandler(BaseHTTPServer.BaseHTTPRequestHandler):
- @staticmethod
def sendheaders(s, extra=[], length=len(data)):
s.send_response(200)
s.send_header("Content-Length", str(length))
@@ -10534,11 +10533,14 @@ elif 'browser' in str(sys.argv):
s.end_headers()
def do_HEAD(s):
- ChunkedServerHandler.sendheaders(s)
-
+ s.sendheaders()
+
+ def do_OPTIONS(s):
+ s.sendheaders([("Access-Control-Allow-Headers", "Range")], 0)
+
def do_GET(s):
if not support_byte_ranges:
- ChunkedServerHandler.sendheaders(s)
+ s.sendheaders()
s.wfile.write(data)
else:
(start, end) = s.headers.get("range").split("=")[1].split("-")
@@ -10546,7 +10548,7 @@ elif 'browser' in str(sys.argv):
end = int(end)
end = min(len(data)-1, end)
length = end-start+1
- ChunkedServerHandler.sendheaders(s,[],length)
+ s.sendheaders([],length)
s.wfile.write(data[start:end+1])
s.wfile.close()
httpd = BaseHTTPServer.HTTPServer(('localhost', 11111), ChunkedServerHandler)