|
|
|
@ -271,6 +271,26 @@ 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, object} = ActivityPub.unannounce(user, object)
|
|
|
|
|
assert object.data["announcement_count"] == 0
|
|
|
|
|
|
|
|
|
|
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{
|
|
|
|
|