pleroma/test/activity_test.exs
2018-12-24 20:09:18 +03:00

53 lines
1.5 KiB
Elixir

defmodule Pleroma.ActivityTest do
use Pleroma.DataCase
alias Pleroma.Activity
import Pleroma.Factory
test "returns an activity by it's AP id" do
activity = insert(:note_activity)
found_activity = Pleroma.Activity.get_by_ap_id(activity.data["id"])
assert activity == found_activity
end
test "returns activities by it's objects AP ids" do
activity = insert(:note_activity)
[found_activity] = Pleroma.Activity.all_by_object_ap_id(activity.data["object"]["id"])
assert activity == found_activity
end
test "returns the activity that created an object" do
activity = insert(:note_activity)
found_activity =
Pleroma.Activity.get_create_activity_by_object_ap_id(activity.data["object"]["id"])
assert activity == found_activity
end
test "returns tombstone" do
activity = insert(:note_activity)
deleted = DateTime.utc_now()
assert Pleroma.Activity.get_tombstone(activity, deleted) == %{
id: activity.data["object"]["id"],
context: activity.data["context"],
type: "Tombstone",
published: activity.data["published"],
deleted: deleted
}
end
test "swaps data with tombstone" do
activity = insert(:note_activity)
{:ok, deleted} = Pleroma.Activity.swap_data_with_tombstone(activity)
assert deleted.data.type == "Tombstone"
found_activity = Repo.get(Activity, activity.id)
assert deleted.data.type == found_activity.data["type"]
end
end