From e5fcc51a067dd420d37c68f9eabe0b7df2e048d5 Mon Sep 17 00:00:00 2001 From: lain Date: Sat, 24 Feb 2018 17:36:02 +0100 Subject: Remove unneccesary subscriptions on update. --- test/web/activity_pub/transmogrifier_test.exs | 30 +++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'test') 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 -- cgit v1.2.3