From b74f1b1b144a678daa7a9a3716992b74b69f6f7c Mon Sep 17 00:00:00 2001 From: Min RK Date: Wed, 19 Mar 2025 14:00:23 +0100 Subject: [PATCH] add some debugging output for intermittent share code failure --- jupyterhub/orm.py | 2 +- jupyterhub/tests/test_shares.py | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/jupyterhub/orm.py b/jupyterhub/orm.py index a08b6967..f01cdcf8 100644 --- a/jupyterhub/orm.py +++ b/jupyterhub/orm.py @@ -945,7 +945,7 @@ class ShareCode(_Share, Hashed, Base): else: server_name = "unknown/deleted" - return f"<{self.__class__.__name__}(server={server_name}, scopes={self.scopes}, expires_at={self.expires_at})>" + return f"<{self.__class__.__name__}(id={self.id}, server={server_name}, scopes={self.scopes}, expires_at={self.expires_at})>" @classmethod def new( diff --git a/jupyterhub/tests/test_shares.py b/jupyterhub/tests/test_shares.py index 2d3d2c92..c3c368d9 100644 --- a/jupyterhub/tests/test_shares.py +++ b/jupyterhub/tests/test_shares.py @@ -1342,6 +1342,13 @@ async def test_share_codes_api_revoke( method="delete", name=requester.name, ) + if r.status_code != status: + # debug intermittent failure + print(f"{share_code=}") + print(f"{code=}") + print(f"{url=}") + for sc in db.query(orm.ShareCode): + print(f"{sc.id=}, {sc.prefix=}, {sc.hashed=}, {sc=}") assert r.status_code == status # other code unaffected