Add error to startup of DynamicHTTPEndpointCase
diff --git a/tsqa/endpoint.py b/tsqa/endpoint.py
index a2db090..993125b 100644
--- a/tsqa/endpoint.py
+++ b/tsqa/endpoint.py
@@ -119,6 +119,8 @@
threading.Thread.__init__(self)
# dict to store request data in
self._tracked_requests = {}
+ # error in startup
+ self.error = None
self.daemon = True
self.port = port
@@ -221,11 +223,14 @@
return 'http://127.0.0.1:{0}{1}'.format(self.address[1], path)
def run(self):
- self.server = make_server('',
- self.port,
- self.app.wsgi_app)
- # mark the socket as SO_REUSEADDR
- self.server.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
+ try:
+ self.server = make_server('',
+ self.port,
+ self.app.wsgi_app)
+ # mark the socket as SO_REUSEADDR
+ self.server.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
+ except Exception as e:
+ self.error = e
# mark it as ready
self.ready.set()
# serve it
diff --git a/tsqa/test_cases.py b/tsqa/test_cases.py
index 3849d6a..b145df2 100644
--- a/tsqa/test_cases.py
+++ b/tsqa/test_cases.py
@@ -189,6 +189,8 @@
cls.http_endpoint.start()
cls.http_endpoint.ready.wait()
+ if cls.http_endpoint.error is not None:
+ raise unittest.SkipTest('Error starting DynamicHTTPEndpoint: {0}'.format(e))
# Do this last, so we can get our stuff registered
# call parent constructor