Add some tests around cascade deletion behaving now that we have FK pragma turned on

This commit is contained in:
Jack Kingsman
2026-04-02 18:46:37 -07:00
parent cfe485bf29
commit 5d2834a9fb
2 changed files with 32 additions and 4 deletions
+4 -4
View File
@@ -395,11 +395,11 @@ class ContactRepository:
@staticmethod
async def delete(public_key: str) -> None:
normalized = public_key.lower()
# contact_name_history and contact_advert_paths cascade via FK, but
# messages has no FK to contacts — clean up DMs explicitly.
await db.conn.execute(
"DELETE FROM contact_name_history WHERE public_key = ?", (normalized,)
)
await db.conn.execute(
"DELETE FROM contact_advert_paths WHERE public_key = ?", (normalized,)
"DELETE FROM messages WHERE type = 'PRIV' AND conversation_key = ?",
(normalized,),
)
await db.conn.execute("DELETE FROM contacts WHERE public_key = ?", (normalized,))
await db.conn.commit()