tests/tinyproxy.py
changeset 43076 2372284d9457
parent 41709 97e2442a4595
child 45830 c102b704edb5
--- a/tests/tinyproxy.py	Sat Oct 05 10:29:34 2019 -0400
+++ b/tests/tinyproxy.py	Sun Oct 06 09:45:02 2019 -0400
@@ -34,12 +34,13 @@
 else:
     family = socket.AF_INET
 
-class ProxyHandler (httpserver.basehttprequesthandler):
+
+class ProxyHandler(httpserver.basehttprequesthandler):
     __base = httpserver.basehttprequesthandler
     __base_handle = __base.handle
 
     server_version = "TinyHTTPProxy/" + __version__
-    rbufsize = 0                        # self.rfile Be unbuffered
+    rbufsize = 0  # self.rfile Be unbuffered
 
     def handle(self):
         (ip, port) = self.client_address
@@ -53,9 +54,13 @@
 
     def log_request(self, code='-', size='-'):
         xheaders = [h for h in self.headers.items() if h[0].startswith('x-')]
-        self.log_message('"%s" %s %s%s',
-                         self.requestline, str(code), str(size),
-                         ''.join([' %s:%s' % h for h in sorted(xheaders)]))
+        self.log_message(
+            '"%s" %s %s%s',
+            self.requestline,
+            str(code),
+            str(size),
+            ''.join([' %s:%s' % h for h in sorted(xheaders)]),
+        )
         # Flush for Windows, so output isn't lost on TerminateProcess()
         sys.stdout.flush()
         sys.stderr.flush()
@@ -63,14 +68,17 @@
     def _connect_to(self, netloc, soc):
         i = netloc.find(':')
         if i >= 0:
-            host_port = netloc[:i], int(netloc[i + 1:])
+            host_port = netloc[:i], int(netloc[i + 1 :])
         else:
             host_port = netloc, 80
         print("\t" "connect to %s:%d" % host_port)
-        try: soc.connect(host_port)
+        try:
+            soc.connect(host_port)
         except socket.error as arg:
-            try: msg = arg[1]
-            except (IndexError, TypeError): msg = arg
+            try:
+                msg = arg[1]
+            except (IndexError, TypeError):
+                msg = arg
             self.send_error(404, msg)
             return 0
         return 1
@@ -80,10 +88,14 @@
         try:
             if self._connect_to(self.path, soc):
                 self.log_request(200)
-                self.wfile.write(pycompat.bytestr(self.protocol_version) +
-                                 b" 200 Connection established\r\n")
-                self.wfile.write(b"Proxy-agent: %s\r\n" %
-                                 pycompat.bytestr(self.version_string()))
+                self.wfile.write(
+                    pycompat.bytestr(self.protocol_version)
+                    + b" 200 Connection established\r\n"
+                )
+                self.wfile.write(
+                    b"Proxy-agent: %s\r\n"
+                    % pycompat.bytestr(self.version_string())
+                )
                 self.wfile.write(b"\r\n")
                 self._read_write(soc, 300)
         finally:
@@ -93,7 +105,8 @@
 
     def do_GET(self):
         (scm, netloc, path, params, query, fragment) = urlreq.urlparse(
-            self.path, 'http')
+            self.path, 'http'
+        )
         if scm != 'http' or fragment or not netloc:
             self.send_error(400, "bad url %s" % self.path)
             return
@@ -102,15 +115,21 @@
             if self._connect_to(netloc, soc):
                 self.log_request()
                 url = urlreq.urlunparse(('', '', path, params, query, ''))
-                soc.send(b"%s %s %s\r\n" % (
-                    pycompat.bytestr(self.command),
-                    pycompat.bytestr(url),
-                    pycompat.bytestr(self.request_version)))
+                soc.send(
+                    b"%s %s %s\r\n"
+                    % (
+                        pycompat.bytestr(self.command),
+                        pycompat.bytestr(url),
+                        pycompat.bytestr(self.request_version),
+                    )
+                )
                 self.headers['Connection'] = 'close'
                 del self.headers['Proxy-Connection']
                 for key, val in self.headers.items():
-                    soc.send(b"%s: %s\r\n" % (pycompat.bytestr(key),
-                                              pycompat.bytestr(val)))
+                    soc.send(
+                        b"%s: %s\r\n"
+                        % (pycompat.bytestr(key), pycompat.bytestr(val))
+                    )
                 soc.send(b"\r\n")
                 self._read_write(soc)
         finally:
@@ -147,17 +166,18 @@
 
     do_HEAD = do_GET
     do_POST = do_GET
-    do_PUT  = do_GET
+    do_PUT = do_GET
     do_DELETE = do_GET
 
-class ThreadingHTTPServer (socketserver.ThreadingMixIn,
-                           httpserver.httpserver):
+
+class ThreadingHTTPServer(socketserver.ThreadingMixIn, httpserver.httpserver):
     def __init__(self, *args, **kwargs):
         httpserver.httpserver.__init__(self, *args, **kwargs)
         a = open("proxy.pid", "w")
         a.write(str(os.getpid()) + "\n")
         a.close()
 
+
 def runserver(port=8000, bind=""):
     server_address = (bind, port)
     ProxyHandler.protocol_version = "HTTP/1.0"
@@ -171,6 +191,7 @@
         httpd.server_close()
         sys.exit(0)
 
+
 if __name__ == '__main__':
     argv = sys.argv
     if argv[1:] and argv[1] in ('-h', '--help'):
@@ -188,9 +209,13 @@
             print("Any clients will be served...")
 
         parser = optparse.OptionParser()
-        parser.add_option('-b', '--bind', metavar='ADDRESS',
-                          help='Specify alternate bind address '
-                               '[default: all interfaces]', default='')
+        parser.add_option(
+            '-b',
+            '--bind',
+            metavar='ADDRESS',
+            help='Specify alternate bind address ' '[default: all interfaces]',
+            default='',
+        )
         (options, args) = parser.parse_args()
         port = 8000
         if len(args) == 1: