diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/pleroma/web/activity_pub/object_validators/article_note_page_validator_test.exs | 5 | ||||
| -rw-r--r-- | test/pleroma/web/activity_pub/object_validators/update_handling_test.exs | 35 | 
2 files changed, 39 insertions, 1 deletions
diff --git a/test/pleroma/web/activity_pub/object_validators/article_note_page_validator_test.exs b/test/pleroma/web/activity_pub/object_validators/article_note_page_validator_test.exs index f93537ed8..c87b07547 100644 --- a/test/pleroma/web/activity_pub/object_validators/article_note_page_validator_test.exs +++ b/test/pleroma/web/activity_pub/object_validators/article_note_page_validator_test.exs @@ -31,6 +31,11 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.ArticleNotePageValidatorTest      test "a basic note validates", %{note: note} do        %{valid?: true} = ArticleNotePageValidator.cast_and_validate(note)      end + +    test "a note from factory validates" do +      note = insert(:note) +      %{valid?: true} = ArticleNotePageValidator.cast_and_validate(note.data) +    end    end    test "a Note from Roadhouse validates" do diff --git a/test/pleroma/web/activity_pub/object_validators/update_handling_test.exs b/test/pleroma/web/activity_pub/object_validators/update_handling_test.exs index f2a22d370..b812b0b0e 100644 --- a/test/pleroma/web/activity_pub/object_validators/update_handling_test.exs +++ b/test/pleroma/web/activity_pub/object_validators/update_handling_test.exs @@ -60,7 +60,40 @@ defmodule Pleroma.Web.ActivityPub.ObjectValidators.UpdateHandlingTest do        {:ok, update, _} = Builder.update(other_user, updated_note) -      assert {:ok, _update, []} = ObjectValidator.validate(update, []) +      assert {:ok, _update, _} = ObjectValidator.validate(update, []) +    end +  end + +  describe "update note" do +    test "converts object into Pleroma's format" do +      mastodon_tags = [ +        %{ +          "icon" => %{ +            "mediaType" => "image/png", +            "type" => "Image", +            "url" => "https://somewhere.org/emoji/url/1.png" +          }, +          "id" => "https://somewhere.org/emoji/1", +          "name" => ":some_emoji:", +          "type" => "Emoji", +          "updated" => "2021-04-07T11:00:00Z" +        } +      ] + +      user = insert(:user) +      note = insert(:note, user: user) + +      updated_note = +        note.data +        |> Map.put("content", "edited content") +        |> Map.put("tag", mastodon_tags) + +      {:ok, update, _} = Builder.update(user, updated_note) + +      assert {:ok, _update, meta} = ObjectValidator.validate(update, []) + +      assert %{"emoji" => %{"some_emoji" => "https://somewhere.org/emoji/url/1.png"}} = +               meta[:object_data]      end    end  end  | 
