summaryrefslogtreecommitdiff
path: root/test/pleroma/web/common_api/activity_draft_test.exs
blob: 02bc6cf3b117c50b76cec97b89fd4e208bc5dcc2 (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
28
29
30
31
32
33
# Pleroma: A lightweight social networking server
# Copyright © 2017-2021 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only

defmodule Pleroma.Web.CommonAPI.ActivityDraftTest do
  use Pleroma.DataCase

  alias Pleroma.Web.CommonAPI
  alias Pleroma.Web.CommonAPI.ActivityDraft

  import Pleroma.Factory

  test "create/2 with a quote post" do
    user = insert(:user)
    another_user = insert(:user)

    {:ok, direct} = CommonAPI.post(user, %{status: ".", visibility: "direct"})
    {:ok, private} = CommonAPI.post(user, %{status: ".", visibility: "private"})
    {:ok, unlisted} = CommonAPI.post(user, %{status: ".", visibility: "unlisted"})
    {:ok, local} = CommonAPI.post(user, %{status: ".", visibility: "local"})
    {:ok, public} = CommonAPI.post(user, %{status: ".", visibility: "public"})

    {:error, _} = ActivityDraft.create(user, %{status: "nice", quote_id: direct.id})
    {:ok, _} = ActivityDraft.create(user, %{status: "nice", quote_id: private.id})
    {:error, _} = ActivityDraft.create(another_user, %{status: "nice", quote_id: private.id})
    {:ok, _} = ActivityDraft.create(user, %{status: "nice", quote_id: unlisted.id})
    {:ok, _} = ActivityDraft.create(another_user, %{status: "nice", quote_id: unlisted.id})
    {:ok, _} = ActivityDraft.create(user, %{status: "nice", quote_id: local.id})
    {:ok, _} = ActivityDraft.create(another_user, %{status: "nice", quote_id: local.id})
    {:ok, _} = ActivityDraft.create(user, %{status: "nice", quote_id: public.id})
    {:ok, _} = ActivityDraft.create(another_user, %{status: "nice", quote_id: public.id})
  end
end