cleanup more after mockservices

This commit is contained in:
Min RK
2017-04-04 17:10:00 +02:00
parent c6fe145030
commit d11c7ba4db
2 changed files with 12 additions and 5 deletions

View File

@@ -68,9 +68,12 @@ def app(request):
class MockServiceSpawner(jupyterhub.services.service._ServiceSpawner):
poll_interval = 1
_mock_service_counter = 0
def _mockservice(request, app, url=False):
name = 'mock-service'
global _mock_service_counter
_mock_service_counter += 1
name = 'mock-service-%i' % _mock_service_counter
spec = {
'name': name,
'command': mockservice_cmd,
@@ -86,7 +89,11 @@ def _mockservice(request, app, url=False):
assert name in app._service_map
service = app._service_map[name]
app.io_loop.add_callback(service.start)
request.addfinalizer(service.stop)
def cleanup():
service.stop()
app.services[:] = []
app._service_map.clear()
request.addfinalizer(cleanup)
for i in range(20):
if not getattr(service, 'proc', False):
time.sleep(0.2)

View File

@@ -732,8 +732,8 @@ def test_get_services(app, mockservice_url):
services = r.json()
assert services == {
'mock-service': {
'name': 'mock-service',
mockservice.name: {
'name': mockservice.name,
'admin': True,
'command': mockservice.command,
'pid': mockservice.proc.pid,
@@ -758,7 +758,7 @@ def test_get_service(app, mockservice_url):
service = r.json()
assert service == {
'name': 'mock-service',
'name': mockservice.name,
'admin': True,
'command': mockservice.command,
'pid': mockservice.proc.pid,