#!/usr/bin/env python3
import http.server, socketserver, time, os, sys

PORT = int(sys.argv[1]) if len(sys.argv) > 1 else 8080
os.chdir(os.path.dirname(os.path.abspath(__file__)))

class H(http.server.SimpleHTTPRequestHandler):
    def do_GET(self):
        if self.path.startswith('/slow'):
            # Hold the connection a bit to keep browser ThreadPool workers busy.
            time.sleep(2)
            self.send_response(200)
            self.send_header('Content-Type', 'text/plain')
            self.send_header('Cache-Control', 'no-store')
            self.end_headers()
            self.wfile.write(b'ok')
            return
        return super().do_GET()

class TS(socketserver.ThreadingMixIn, socketserver.TCPServer):
    allow_reuse_address = True
    daemon_threads = True

print(f'Serving poc.html on http://0.0.0.0:{PORT}/poc.html')
TS(('0.0.0.0', PORT), H).serve_forever()
