let test_choose_a_port_for_me pass when service registry is missing, i.e. when not running with rethinkdb

This commit is contained in:
Noah Levitt 2017-04-17 12:05:39 -07:00
parent 3d87ed61be
commit 47680cc17d
2 changed files with 13 additions and 12 deletions

View File

@ -51,7 +51,7 @@ except:
setuptools.setup(
name='warcprox',
version='2.1b1.dev70',
version='2.1b1.dev71',
description='WARC writing MITM HTTP/S proxy',
url='https://github.com/internetarchive/warcprox',
author='Noah Levitt',

View File

@ -1369,23 +1369,24 @@ def test_choose_a_port_for_me(service_registry):
th = threading.Thread(target=controller.run_until_shutdown)
th.start()
try:
# check that service registry entry lists the correct port
start = time.time()
ports = []
while time.time() - start < 30:
svcs = service_registry.available_services('warcprox')
ports = [svc['port'] for svc in svcs]
if controller.proxy.server_port in ports:
break
assert controller.proxy.server_port in ports
# check that the status api lists the correct port
url = 'http://localhost:%s/status' % controller.proxy.server_port
response = requests.get(url)
assert response.status_code == 200
status = json.loads(response.content.decode('ascii'))
assert status['port'] == controller.proxy.server_port
if service_registry:
# check that service registry entry lists the correct port
start = time.time()
ports = []
while time.time() - start < 30:
svcs = service_registry.available_services('warcprox')
ports = [svc['port'] for svc in svcs]
if controller.proxy.server_port in ports:
break
assert controller.proxy.server_port in ports
finally:
controller.stop.set()
th.join()