Add test follow activity for locked account
authorkPherox <admin@mail.kr-kp.com>
Tue, 29 Oct 2019 09:46:22 +0000 (18:46 +0900)
committerkPherox <admin@mail.kr-kp.com>
Tue, 29 Oct 2019 09:46:22 +0000 (18:46 +0900)
test/web/activity_pub/transmogrifier_test.exs

index 2f25c40d2b42be6034f7f824a945e43650d0068e..d920b969a8569989751ed458291671e72b618465 100644 (file)
@@ -804,6 +804,25 @@ defmodule Pleroma.Web.ActivityPub.TransmogrifierTest do
       refute User.following?(User.get_cached_by_ap_id(data["actor"]), user)
     end
 
+    test "it works for incoming follows to locked account" do
+      pending_follower = insert(:user, ap_id: "http://mastodon.example.org/users/admin")
+      user = insert(:user, locked: true)
+
+      data =
+        File.read!("test/fixtures/mastodon-follow-activity.json")
+        |> Poison.decode!()
+        |> Map.put("object", user.ap_id)
+
+      {:ok, %Activity{data: data, local: false}} = Transmogrifier.handle_incoming(data)
+
+      assert data["type"] == "Follow"
+      assert data["object"] == user.ap_id
+      assert data["state"] == "pending"
+      assert data["actor"] == "http://mastodon.example.org/users/admin"
+
+      assert [^pending_follower] = User.get_follow_requests(user)
+    end
+
     test "it works for incoming blocks" do
       user = insert(:user)