diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/support/factory.ex | 47 | ||||
-rw-r--r-- | test/test_helper.exs | 1 |
2 files changed, 48 insertions, 0 deletions
diff --git a/test/support/factory.ex b/test/support/factory.ex new file mode 100644 index 000000000..fcbdfbd9a --- /dev/null +++ b/test/support/factory.ex @@ -0,0 +1,47 @@ +defmodule Pleroma.Factory do + use ExMachina.Ecto, repo: Pleroma.Repo + + def user_factory do + user = %Pleroma.User{ + name: sequence(:name, &"Test User #{&1}"), + email: sequence(:email, &"user#{&1}@example.com"), + nickname: sequence(:nickname, &"nick#{&1}"), + password_hash: Comeonin.Pbkdf2.hashpwsalt("test"), + bio: sequence(:bio, &"Tester Number #{&1}"), + } + %{ user | ap_id: Pleroma.User.ap_id(user) } + end + + def note_factory do + text = sequence(:text, &"This is note #{&1}") + + user = insert(:user) + data = %{ + "type" => "Note", + "content" => text, + "id" => Pleroma.Web.ActivityPub.ActivityPub.generate_object_id, + "actor" => user.ap_id, + "to" => ["https://www.w3.org/ns/activitystreams#Public"], + "published_at" => DateTime.utc_now() |> DateTime.to_iso8601 + } + + %Pleroma.Object{ + data: data + } + end + + def note_activity_factory do + note = insert(:note) + data = %{ + "id" => Pleroma.Web.ActivityPub.ActivityPub.generate_activity_id, + "actor" => note.data["actor"], + "to" => note.data["to"], + "object" => note.data, + "published_at" => DateTime.utc_now() |> DateTime.to_iso8601 + } + + %Pleroma.Activity{ + data: data + } + end +end diff --git a/test/test_helper.exs b/test/test_helper.exs index 602c5fca4..a2a9c7fd9 100644 --- a/test/test_helper.exs +++ b/test/test_helper.exs @@ -1,4 +1,5 @@ ExUnit.start() Ecto.Adapters.SQL.Sandbox.mode(Pleroma.Repo, :manual) +{:ok, _} = Application.ensure_all_started(:ex_machina) |