| Index: net/tools/testserver/backoff_server.py
|
| diff --git a/net/tools/testserver/backoff_server.py b/net/tools/testserver/backoff_server.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..4188cd103897b60c0e6fbb049af674aa46d15491
|
| --- /dev/null
|
| +++ b/net/tools/testserver/backoff_server.py
|
| @@ -0,0 +1,51 @@
|
| +#!/usr/bin/python2.4
|
| +# Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +
|
| +"""This is a simple HTTP server for manually testing exponential
|
| +back-off functionality in Chrome.
|
| +"""
|
| +
|
| +
|
| +import BaseHTTPServer
|
| +import sys
|
| +import urlparse
|
| +
|
| +
|
| +class RequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
|
| + keep_running = True
|
| +
|
| + def do_GET(self):
|
| + if self.path == '/quitquitquit':
|
| + self.send_response(200)
|
| + self.send_header('Content-Type', 'text/plain')
|
| + self.end_headers()
|
| + self.wfile.write('QUITTING')
|
| + RequestHandler.keep_running = False
|
| + return
|
| +
|
| + params = urlparse.parse_qs(urlparse.urlparse(self.path).query)
|
| +
|
| + if not params or not 'code' in params or params['code'][0] == '200':
|
| + self.send_response(200)
|
| + self.send_header('Content-Type', 'text/plain')
|
| + self.end_headers()
|
| + self.wfile.write('OK')
|
| + else:
|
| + self.send_error(int(params['code'][0]))
|
| +
|
| +
|
| +def main():
|
| + if len(sys.argv) != 2:
|
| + print "Usage: %s PORT" % sys.argv[0]
|
| + sys.exit(1)
|
| + port = int(sys.argv[1])
|
| + print "To stop the server, go to http://localhost:%d/quitquitquit" % port
|
| + httpd = BaseHTTPServer.HTTPServer(('', port), RequestHandler)
|
| + while RequestHandler.keep_running:
|
| + httpd.handle_request()
|
| +
|
| +
|
| +if __name__ == '__main__':
|
| + main()
|
|
|