summaryrefslogtreecommitdiff
path: root/test/web/activity_pub/object_validators/types/recipients_test.exs
blob: 053916bdd5f573875a375917b9b3641c61edf958 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
defmodule Pleroma.Web.ObjectValidators.Types.RecipientsTest do
  alias Pleroma.EctoType.ActivityPub.ObjectValidators.Recipients
  use Pleroma.DataCase

  test "it asserts that all elements of the list are object ids" do
    list = ["https://lain.com/users/lain", "invalid"]

    assert :error == Recipients.cast(list)
  end

  test "it works with a list" do
    list = ["https://lain.com/users/lain"]
    assert {:ok, list} == Recipients.cast(list)
  end

  test "it works with a list with whole objects" do
    list = ["https://lain.com/users/lain", %{"id" => "https://gensokyo.2hu/users/raymoo"}]
    resulting_list = ["https://gensokyo.2hu/users/raymoo", "https://lain.com/users/lain"]
    assert {:ok, resulting_list} == Recipients.cast(list)
  end

  test "it turns a single string into a list" do
    recipient = "https://lain.com/users/lain"

    assert {:ok, [recipient]} == Recipients.cast(recipient)
  end
end