summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2020-08-31 16:48:17 +0200
committerlain <lain@soykaf.club>2020-08-31 16:48:17 +0200
commit0b621a834acf751332f4d202bd50d4ff3e789176 (patch)
tree89fc93191f49d92050102935bf8aad1a7aacfa90 /test
parent0417b2f649172ea300c124159aa86b964e404a0c (diff)
downloadpleroma-0b621a834acf751332f4d202bd50d4ff3e789176.tar.gz
pleroma-0b621a834acf751332f4d202bd50d4ff3e789176.zip
Chats: Add cascading delete on both referenced users.
Also remove the now-superfluous join in the chat controller, which was only used to filter out these cases.
Diffstat (limited to 'test')
-rw-r--r--test/chat_test.exs22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/chat_test.exs b/test/chat_test.exs
index 332f2180a..9e8a9ebf0 100644
--- a/test/chat_test.exs
+++ b/test/chat_test.exs
@@ -26,6 +26,28 @@ defmodule Pleroma.ChatTest do
assert chat.id
end
+ test "deleting the user deletes the chat" do
+ user = insert(:user)
+ other_user = insert(:user)
+
+ {:ok, chat} = Chat.bump_or_create(user.id, other_user.ap_id)
+
+ Repo.delete(user)
+
+ refute Chat.get_by_id(chat.id)
+ end
+
+ test "deleting the recipient deletes the chat" do
+ user = insert(:user)
+ other_user = insert(:user)
+
+ {:ok, chat} = Chat.bump_or_create(user.id, other_user.ap_id)
+
+ Repo.delete(other_user)
+
+ refute Chat.get_by_id(chat.id)
+ end
+
test "it returns and bumps a chat for a user and recipient if it already exists" do
user = insert(:user)
other_user = insert(:user)