diff options
Diffstat (limited to 'test/web/activity_pub/object_validators')
| -rw-r--r-- | test/web/activity_pub/object_validators/types/recipients_test.exs | 27 | 
1 files changed, 27 insertions, 0 deletions
diff --git a/test/web/activity_pub/object_validators/types/recipients_test.exs b/test/web/activity_pub/object_validators/types/recipients_test.exs new file mode 100644 index 000000000..f278f039b --- /dev/null +++ b/test/web/activity_pub/object_validators/types/recipients_test.exs @@ -0,0 +1,27 @@ +defmodule Pleroma.Web.ObjectValidators.Types.RecipientsTest do +  alias Pleroma.Web.ActivityPub.ObjectValidators.Types.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  | 
