test-static-http: flush access log per request stable
authorYuya Nishihara <yuya@tcha.org>
Sun, 29 Oct 2017 17:53:52 +0900
branchstable
changeset 34944 bf2db35a6fe7
parent 34943 3423f7e2d287
child 34945 d2554ef04d26
test-static-http: flush access log per request It appears that stderr is fully buffered on Windows. # no-check-commit because of log_message() function
tests/dumbhttp.py
--- a/tests/dumbhttp.py	Sat Oct 28 17:23:52 2017 +0900
+++ b/tests/dumbhttp.py	Sun Oct 29 17:53:52 2017 +0900
@@ -26,12 +26,16 @@
 else:
     simplehttpserver = httpserver.httpserver
 
+class _httprequesthandler(httpserver.simplehttprequesthandler):
+    def log_message(self, format, *args):
+        httpserver.simplehttprequesthandler.log_message(self, format, *args)
+        sys.stderr.flush()
+
 class simplehttpservice(object):
     def __init__(self, host, port):
         self.address = (host, port)
     def init(self):
-        self.httpd = simplehttpserver(
-            self.address, httpserver.simplehttprequesthandler)
+        self.httpd = simplehttpserver(self.address, _httprequesthandler)
     def run(self):
         self.httpd.serve_forever()