summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/web/activity_pub/transmogrifier_test.exs30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/web/activity_pub/transmogrifier_test.exs b/test/web/activity_pub/transmogrifier_test.exs
index 297d48f42..2e500d11d 100644
--- a/test/web/activity_pub/transmogrifier_test.exs
+++ b/test/web/activity_pub/transmogrifier_test.exs
@@ -4,6 +4,8 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
alias Pleroma.Activity
alias Pleroma.User
alias Pleroma.Repo
+ alias Pleroma.Web.Websub.WebsubClientSubscription
+ alias Pleroma.Web.Websub.WebsubServerSubscription
import Ecto.Query
import Pleroma.Factory
@@ -216,4 +218,32 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
refute "..." in user_two.following
end
end
+
+ describe "maybe_retire_websub" do
+ test "it deletes all websub client subscripitions with the user as topic" do
+ subscription = %WebsubClientSubscription{topic: "https://niu.moe/users/rye.atom"}
+ {:ok, ws} = Repo.insert(subscription)
+
+ subscription = %WebsubClientSubscription{topic: "https://niu.moe/users/pasty.atom"}
+ {:ok, ws2} = Repo.insert(subscription)
+
+ Transmogrifier.maybe_retire_websub("https://niu.moe/users/rye")
+
+ refute Repo.get(WebsubClientSubscription, ws.id)
+ assert Repo.get(WebsubClientSubscription, ws2.id)
+ end
+
+ test "it deletes all websub server subscriptions with the server as callback" do
+ subscription = %WebsubClientSubscription{topic: "https://niu.moe/users/rye.atom"}
+ {:ok, ws} = Repo.insert(subscription)
+
+ subscription = %WebsubClientSubscription{topic: "https://niu.moe/users/pasty.atom"}
+ {:ok, ws2} = Repo.insert(subscription)
+
+ Transmogrifier.maybe_retire_websub("https://niu.moe/users/rye")
+
+ refute Repo.get(WebsubClientSubscription, ws.id)
+ assert Repo.get(WebsubClientSubscription, ws2.id)
+ end
+ end
end