diff options
author | Haelwenn <contact+git.pleroma.social@hacktivis.me> | 2020-07-09 10:32:24 +0000 |
---|---|---|
committer | Haelwenn <contact+git.pleroma.social@hacktivis.me> | 2020-07-09 10:32:24 +0000 |
commit | 68036f5a3b7b609f4464650c2ae40b9679d45291 (patch) | |
tree | 25e0f0f372ea0f77719bb253dee13a4cd831de54 /test/web/activity_pub/object_validators/update_validation_test.exs | |
parent | 34d6009d82ef8949d689ed1f7c4ec2c2fad254c7 (diff) | |
parent | 00e54f8fe7af098ba829f7f7cd5511569dcd1c0a (diff) | |
download | pleroma-68036f5a3b7b609f4464650c2ae40b9679d45291.tar.gz pleroma-68036f5a3b7b609f4464650c2ae40b9679d45291.zip |
Merge branch 'follow-pipeline' into 'develop'
Handle `Follow` activities with the pipeline
See merge request pleroma/pleroma!2734
Diffstat (limited to 'test/web/activity_pub/object_validators/update_validation_test.exs')
-rw-r--r-- | test/web/activity_pub/object_validators/update_validation_test.exs | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/test/web/activity_pub/object_validators/update_validation_test.exs b/test/web/activity_pub/object_validators/update_validation_test.exs new file mode 100644 index 000000000..5e80cf731 --- /dev/null +++ b/test/web/activity_pub/object_validators/update_validation_test.exs @@ -0,0 +1,44 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ActivityPub.ObjectValidators.UpdateHandlingTest do + use Pleroma.DataCase + + alias Pleroma.Web.ActivityPub.Builder + alias Pleroma.Web.ActivityPub.ObjectValidator + + import Pleroma.Factory + + describe "updates" do + setup do + user = insert(:user) + + object = %{ + "id" => user.ap_id, + "name" => "A new name", + "summary" => "A new bio" + } + + {:ok, valid_update, []} = Builder.update(user, object) + + %{user: user, valid_update: valid_update} + end + + test "validates a basic object", %{valid_update: valid_update} do + assert {:ok, _update, []} = ObjectValidator.validate(valid_update, []) + end + + test "returns an error if the object can't be updated by the actor", %{ + valid_update: valid_update + } do + other_user = insert(:user) + + update = + valid_update + |> Map.put("actor", other_user.ap_id) + + assert {:error, _cng} = ObjectValidator.validate(update, []) + end + end +end |