mirror of
https://github.com/jupyterhub/jupyterhub.git
synced 2025-10-13 21:13:01 +00:00
Merge pull request #3109 from kxiao-fn/proper_named_server_deletion
fix for stopping named server deleting default server and tests
This commit is contained in:
@@ -912,7 +912,7 @@ class BaseHandler(RequestHandler):
|
||||
self.log.error(
|
||||
"Stopping %s to avoid inconsistent state", user_server_name
|
||||
)
|
||||
await user.stop()
|
||||
await user.stop(server_name)
|
||||
PROXY_ADD_DURATION_SECONDS.labels(status='failure').observe(
|
||||
time.perf_counter() - proxy_add_start_time
|
||||
)
|
||||
|
@@ -368,3 +368,28 @@ async def test_user_redirect_hook_default_server_name(
|
||||
assert redirected_url.path == url_path_join(
|
||||
app.base_url, 'user', username, 'terminals/1'
|
||||
)
|
||||
|
||||
|
||||
async def test_named_server_stop_server(app, username, named_servers):
|
||||
server_name = "myserver"
|
||||
await app.login_user(username)
|
||||
user = app.users[username]
|
||||
|
||||
r = await api_request(app, 'users', username, 'server', method='post')
|
||||
assert r.status_code == 201
|
||||
assert r.text == ''
|
||||
assert user.spawners[''].server
|
||||
|
||||
with mock.patch.object(
|
||||
app.proxy, 'add_user', side_effect=Exception('mock exception')
|
||||
):
|
||||
r = await api_request(
|
||||
app, 'users', username, 'servers', server_name, method='post'
|
||||
)
|
||||
r.raise_for_status()
|
||||
assert r.status_code == 201
|
||||
assert r.text == ''
|
||||
|
||||
assert user.spawners[server_name].server is None
|
||||
assert user.spawners[''].server
|
||||
assert user.running
|
||||
|
Reference in New Issue
Block a user