summaryrefslogtreecommitdiffstats
path: root/packages/meshbay-hub/tests/test_account_deletion.py
diff options
context:
space:
mode:
Diffstat (limited to 'packages/meshbay-hub/tests/test_account_deletion.py')
-rw-r--r--packages/meshbay-hub/tests/test_account_deletion.py42
1 files changed, 21 insertions, 21 deletions
diff --git a/packages/meshbay-hub/tests/test_account_deletion.py b/packages/meshbay-hub/tests/test_account_deletion.py
index 4cbca8b..3d3fee4 100644
--- a/packages/meshbay-hub/tests/test_account_deletion.py
+++ b/packages/meshbay-hub/tests/test_account_deletion.py
@@ -37,11 +37,11 @@ async def _register(client, username, password="a-long-enough-passphrase"):
@pytest.mark.asyncio
async def test_owner_can_delete_their_account(client, db_session):
- token, password = await _register(client, "leaver")
+ token, password = await _register(client, "leaver_test")
headers = {"Authorization": f"Bearer {token}"}
r = await client.request("DELETE", "/v1/users/me", headers=headers,
- json={"auth_key": _auth_key(password, "leaver")})
+ json={"auth_key": _auth_key(password, "leaver_test")})
assert r.status_code == 200, r.text
user = (await db_session.execute(
@@ -58,10 +58,10 @@ async def test_deleting_needs_the_passphrase_not_just_a_session(client):
A live token may be a borrowed laptop or a tab left open. Something
irreversible asks again.
"""
- token, _ = await _register(client, "careful")
+ token, _ = await _register(client, "careful_test")
r = await client.request("DELETE", "/v1/users/me",
headers={"Authorization": f"Bearer {token}"},
- json={"auth_key": _auth_key("wrong one", "careful")})
+ json={"auth_key": _auth_key("wrong one", "careful_test")})
assert r.status_code == 403
me = await client.get("/v1/users/me",
@@ -89,13 +89,13 @@ async def test_owning_a_group_blocks_deletion(client):
Deleting an account that owns groups would strand their members, so it is
refused with the list rather than cascading into other people's data.
"""
- token, password = await _register(client, "owner")
+ token, password = await _register(client, "owner_test")
headers = {"Authorization": f"Bearer {token}"}
r = await client.post("/v1/groups", json={"name": "orphans"}, headers=headers)
assert r.status_code in (200, 201), r.text
r = await client.request("DELETE", "/v1/users/me", headers=headers,
- json={"auth_key": _auth_key(password, "owner")})
+ json={"auth_key": _auth_key(password, "owner_test")})
assert r.status_code == 409
assert "orphans" in r.json()["detail"]
@@ -103,20 +103,20 @@ async def test_owning_a_group_blocks_deletion(client):
@pytest.mark.asyncio
async def test_deletion_clears_memberships_notifications_and_tokens(
client, db_session):
- token, password = await _register(client, "member1")
- owner_token, _ = await _register(client, "grouper")
+ token, password = await _register(client, "member1_test")
+ owner_token, _ = await _register(client, "grouper_test")
g = await client.post("/v1/groups", json={"name": "shared"},
headers={"Authorization": f"Bearer {owner_token}"})
gid = g.json()["group_id"]
- await client.post(f"/v1/groups/{gid}/members/member1", json={},
+ await client.post(f"/v1/groups/{gid}/members/member1_test", json={},
headers={"Authorization": f"Bearer {owner_token}"})
uid = (await db_session.execute(
- select(User.id).where(User.username == "member1"))).scalar_one()
+ select(User.id).where(User.username == "member1_test"))).scalar_one()
await client.request("DELETE", "/v1/users/me",
headers={"Authorization": f"Bearer {token}"},
- json={"auth_key": _auth_key(password, "member1")})
+ json={"auth_key": _auth_key(password, "member1_test")})
for model in (GroupMember, Notification, RefreshToken):
rows = (await db_session.execute(
@@ -142,10 +142,10 @@ async def test_deletion_clears_device_keys_and_swarm_sources(client, db_session)
"""
from meshbay_hub.db.models import SwarmSource, UserDevice
- token, password = await _register(client, "devicer")
+ token, password = await _register(client, "devicer_test")
headers = {"Authorization": f"Bearer {token}"}
uid = (await db_session.execute(
- select(User.id).where(User.username == "devicer"))).scalar_one()
+ select(User.id).where(User.username == "devicer_test"))).scalar_one()
r = await client.post("/v1/users/devices", headers=headers,
json={"pk_auth_ed25519": _device_pk(), "label": "desktop"})
@@ -161,7 +161,7 @@ async def test_deletion_clears_device_keys_and_swarm_sources(client, db_session)
select(SwarmSource).where(SwarmSource.node_id == uid))).scalars().all()
r = await client.request("DELETE", "/v1/users/me", headers=headers,
- json={"auth_key": _auth_key(password, "devicer")})
+ json={"auth_key": _auth_key(password, "devicer_test")})
assert r.status_code == 200, r.text
db_session.expire_all()
@@ -202,9 +202,9 @@ async def test_the_ip_log_survives_and_stays_attributable(client, db_session):
"""
from meshbay_hub.db.models import IPLog
- token, password = await _register(client, "logged")
+ token, password = await _register(client, "logged_test")
uid = (await db_session.execute(
- select(User.id).where(User.username == "logged"))).scalar_one()
+ select(User.id).where(User.username == "logged_test"))).scalar_one()
before = (await db_session.execute(
select(IPLog).where(IPLog.user_id == uid))).scalars().all()
@@ -212,7 +212,7 @@ async def test_the_ip_log_survives_and_stays_attributable(client, db_session):
await client.request("DELETE", "/v1/users/me",
headers={"Authorization": f"Bearer {token}"},
- json={"auth_key": _auth_key(password, "logged")})
+ json={"auth_key": _auth_key(password, "logged_test")})
after = (await db_session.execute(
select(IPLog).where(IPLog.user_id == uid))).scalars().all()
@@ -226,10 +226,10 @@ async def test_a_deleted_account_cannot_keep_using_its_token(client):
status check refuses it straight away — a deleted account must not keep
reading groups until its token happens to expire.
"""
- token, password = await _register(client, "gone")
+ token, password = await _register(client, "gone_test")
headers = {"Authorization": f"Bearer {token}"}
r = await client.request("DELETE", "/v1/users/me", headers=headers,
- json={"auth_key": _auth_key(password, "gone")})
+ json={"auth_key": _auth_key(password, "gone_test")})
assert r.status_code == 200
after = await client.get("/v1/groups/mine", headers=headers)
@@ -239,9 +239,9 @@ async def test_a_deleted_account_cannot_keep_using_its_token(client):
@pytest.mark.asyncio
async def test_only_an_admin_may_delete_someone_else(client, db_session):
token, _ = await _register(client, "ordinary")
- victim_token, _ = await _register(client, "victim")
+ victim_token, _ = await _register(client, "victim_test")
victim_id = (await db_session.execute(
- select(User.id).where(User.username == "victim"))).scalar_one()
+ select(User.id).where(User.username == "victim_test"))).scalar_one()
r = await client.delete(f"/v1/admin/users/{victim_id}",
headers={"Authorization": f"Bearer {token}"})