summaryrefslogtreecommitdiff
path: root/test/web/activity_pub/activity_pub_test.exs
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2018-05-13 11:59:35 +0200
committerlain <lain@soykaf.club>2018-05-13 11:59:35 +0200
commita5c9dd0a2aa792ed075c6ff83b1de262a1529026 (patch)
treecde89f940be50a6ad13d3acc0a0c15d237ca7d96 /test/web/activity_pub/activity_pub_test.exs
parent3c3933e40bce7001b5025bf2e05412dd9c128f0f (diff)
parentaeff2d647483d5348cc1da5c901ce55f1c02b733 (diff)
downloadpleroma-a5c9dd0a2aa792ed075c6ff83b1de262a1529026.tar.gz
pleroma-a5c9dd0a2aa792ed075c6ff83b1de262a1529026.zip
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop
Diffstat (limited to 'test/web/activity_pub/activity_pub_test.exs')
-rw-r--r--test/web/activity_pub/activity_pub_test.exs32
1 files changed, 32 insertions, 0 deletions
diff --git a/test/web/activity_pub/activity_pub_test.exs b/test/web/activity_pub/activity_pub_test.exs
index d336fad95..a39ba9adb 100644
--- a/test/web/activity_pub/activity_pub_test.exs
+++ b/test/web/activity_pub/activity_pub_test.exs
@@ -302,6 +302,38 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubTest do
end
end
+ describe "unannouncing an object" do
+ test "unannouncing a previously announced object" do
+ note_activity = insert(:note_activity)
+ object = Object.get_by_ap_id(note_activity.data["object"]["id"])
+ user = insert(:user)
+
+ # Unannouncing an object that is not announced does nothing
+ # {:ok, object} = ActivityPub.unannounce(user, object)
+ # assert object.data["announcement_count"] == 0
+
+ {:ok, announce_activity, object} = ActivityPub.announce(user, object)
+ assert object.data["announcement_count"] == 1
+
+ {:ok, unannounce_activity, activity, object} = ActivityPub.unannounce(user, object)
+ assert object.data["announcement_count"] == 0
+
+ assert activity == announce_activity
+
+ assert unannounce_activity.data["to"] == [
+ User.ap_followers(user),
+ announce_activity.data["actor"]
+ ]
+
+ assert unannounce_activity.data["type"] == "Undo"
+ assert unannounce_activity.data["object"] == announce_activity.data
+ assert unannounce_activity.data["actor"] == user.ap_id
+ assert unannounce_activity.data["context"] == announce_activity.data["context"]
+
+ assert Repo.get(Activity, announce_activity.id) == nil
+ end
+ end
+
describe "uploading files" do
test "copies the file to the configured folder" do
file = %Plug.Upload{