1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
5 defmodule Pleroma.Web.ActivityPub.ObjectValidators.BlockValidationTest do
6 use Pleroma.DataCase, async: true
8 alias Pleroma.Web.ActivityPub.Builder
9 alias Pleroma.Web.ActivityPub.ObjectValidator
11 import Pleroma.Factory
15 clear_config([:activitypub, :outgoing_blocks], true)
16 user = insert(:user, local: false)
17 blocked = insert(:user)
19 {:ok, valid_block, []} = Builder.block(user, blocked)
21 %{user: user, valid_block: valid_block}
24 test "validates a basic object", %{
25 valid_block: valid_block
27 assert {:ok, _block, []} = ObjectValidator.validate(valid_block, [])
30 test "returns an error if we don't know the blocked user", %{
31 valid_block: valid_block
35 |> Map.put("object", "https://gensokyo.2hu/users/raymoo")
37 assert {:error, _cng} = ObjectValidator.validate(block, [])