summaryrefslogtreecommitdiff
path: root/tools/http_server.py
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2018-08-15 19:08:03 -0400
committerRyan Dahl <ry@tinyclouds.org>2018-08-20 16:53:39 -0400
commitf7fd2389533f0ae387af30ea63755b67a6484e51 (patch)
treee70daea8675e86293f8675ff3eb3c00f9e0629bd /tools/http_server.py
parent8aa04086719d2089920714e00de45d3af99ef5f5 (diff)
Enable http server for tests.
Diffstat (limited to 'tools/http_server.py')
-rwxr-xr-xtools/http_server.py31
1 files changed, 31 insertions, 0 deletions
diff --git a/tools/http_server.py b/tools/http_server.py
new file mode 100755
index 000000000..a3e6adf44
--- /dev/null
+++ b/tools/http_server.py
@@ -0,0 +1,31 @@
+#!/usr/bin/env python
+# Many tests expect there to be an http server on port 4545 servering the deno
+# root directory.
+import os
+from threading import Thread
+import SimpleHTTPServer
+import SocketServer
+from util import root_path
+from time import sleep
+
+PORT = 4545
+
+
+def serve_forever():
+ os.chdir(root_path) # Hopefully the main thread doesn't also chdir.
+ Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
+ httpd = SocketServer.TCPServer(("", PORT), Handler)
+ print "Deno test server http://localhost:%d/" % PORT
+ httpd.serve_forever()
+
+
+def spawn():
+ thread = Thread(target=serve_forever)
+ thread.daemon = True
+ thread.start()
+ sleep(1) # TODO I'm too lazy to figure out how to do this properly.
+ return thread
+
+
+if __name__ == '__main__':
+ serve_forever()