Add unreblogging tests

This commit is contained in:
Francis Dinh 2018-04-14 22:34:06 -04:00
parent b949577472
commit 5b0d0b9ab2
2 changed files with 39 additions and 0 deletions

View file

@ -271,6 +271,26 @@ test "adds an announce activity to the db" 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{

View file

@ -264,6 +264,25 @@ test "reblogs and returns the reblogged status", %{conn: conn} do
end
end
describe "unreblogging" do
test "unreblogs and returns the unreblogged status", %{conn: conn} do
activity = insert(:note_activity)
user = insert(:user)
{:ok, _, _} = CommonAPI.repeat(activity.id, user)
conn =
conn
|> assign(:user, user)
|> post("/api/v1/statuses/#{activity.id}/unreblog")
assert %{"reblog" => %{"id" => id, "reblogged" => false, "reblogs_count" => 0}} =
json_response(conn, 200)
assert to_string(activity.id) == id
end
end
describe "favoriting" do
test "favs a status and returns it", %{conn: conn} do
activity = insert(:note_activity)