summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGabriel Falcão <gabriel@nacaolivre.org>2021-01-05 23:34:06 +0100
committerGabriel Falcão <gabriel@nacaolivre.org>2021-01-05 23:34:06 +0100
commitb604f59de8dabedd2bd5509dab59e930f93ffbb2 (patch)
treea1a1da33d941cd2be0e9f7421013afae4341ad1b
parent6923338cf72ee1827706be59f45a6c12516a393a (diff)
downloadhttpretty-b604f59de8dabedd2bd5509dab59e930f93ffbb2.tar.gz
make subprocess callbacks serializable for python 3.8 support
-rw-r--r--tests/functional/testserver.py54
1 files changed, 29 insertions, 25 deletions
diff --git a/tests/functional/testserver.py b/tests/functional/testserver.py
index 1a43ef1..d18df0a 100644
--- a/tests/functional/testserver.py
+++ b/tests/functional/testserver.py
@@ -56,6 +56,17 @@ class ComeHandler(RequestHandler):
self.write("<- HELLO WORLD ->")
+def subprocess_server_tornado(app, port, data={}):
+ from httpretty import HTTPretty
+ HTTPretty.disable()
+
+ http = HTTPServer(app)
+ HTTPretty.disable()
+
+ http.listen(int(port))
+ IOLoop.instance().start()
+
+
class TornadoServer(object):
is_running = False
@@ -71,22 +82,13 @@ class TornadoServer(object):
])
def start(self):
- def go(app, port, data={}):
- from httpretty import HTTPretty
- HTTPretty.disable()
-
- http = HTTPServer(app)
- HTTPretty.disable()
-
- http.listen(int(port))
- IOLoop.instance().start()
app = self.get_handlers()
data = {}
args = (app, self.port, data)
HTTPretty.disable()
- self.process = Process(target=go, args=args)
+ self.process = Process(target=subprocess_server_tornado, args=args)
self.process.start()
time.sleep(1)
@@ -99,6 +101,22 @@ class TornadoServer(object):
self.is_running = False
+def subprocess_server_tcp(port):
+ from httpretty import HTTPretty
+ HTTPretty.disable()
+ import socket
+ s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+ s.bind(('localhost', port))
+ s.listen(True)
+ conn, addr = s.accept()
+
+ while True:
+ data = conn.recv(1024)
+ conn.send(b"RECEIVED: " + bytes(data))
+
+ conn.close()
+
+
class TCPServer(object):
def __init__(self, port):
self.port = int(port)
@@ -106,23 +124,9 @@ class TCPServer(object):
def start(self):
HTTPretty.disable()
- def go(port):
- from httpretty import HTTPretty
- HTTPretty.disable()
- import socket
- s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- s.bind(('localhost', port))
- s.listen(True)
- conn, addr = s.accept()
-
- while True:
- data = conn.recv(1024)
- conn.send(b"RECEIVED: " + bytes(data))
-
- conn.close()
args = [self.port]
- self.process = Process(target=go, args=args)
+ self.process = Process(target=subprocess_server_tcp, args=args)
self.process.start()
time.sleep(1)