summaryrefslogtreecommitdiff
path: root/test/web/mastodon_api/controllers/report_controller_test.exs
diff options
context:
space:
mode:
authorMark Felder <feld@FreeBSD.org>2020-10-13 10:08:38 -0500
committerMark Felder <feld@FreeBSD.org>2020-10-13 10:08:38 -0500
commitb738f709532ff18845f5d8cc3888d0bd67f750ab (patch)
tree87596ad2bf711bdbc3dc75293996157c3c99d955 /test/web/mastodon_api/controllers/report_controller_test.exs
parentc4fae2611ff4da7c418de236fa643021ddc778c8 (diff)
parent8b6221d4ecd1d7e354e7de831dd46e285cb85077 (diff)
downloadpleroma-b738f709532ff18845f5d8cc3888d0bd67f750ab.tar.gz
pleroma-b738f709532ff18845f5d8cc3888d0bd67f750ab.zip
Merge branch 'develop' into feature/gen-magic
Diffstat (limited to 'test/web/mastodon_api/controllers/report_controller_test.exs')
-rw-r--r--test/web/mastodon_api/controllers/report_controller_test.exs95
1 files changed, 0 insertions, 95 deletions
diff --git a/test/web/mastodon_api/controllers/report_controller_test.exs b/test/web/mastodon_api/controllers/report_controller_test.exs
deleted file mode 100644
index 6636cff96..000000000
--- a/test/web/mastodon_api/controllers/report_controller_test.exs
+++ /dev/null
@@ -1,95 +0,0 @@
-# Pleroma: A lightweight social networking server
-# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/>
-# SPDX-License-Identifier: AGPL-3.0-only
-
-defmodule Pleroma.Web.MastodonAPI.ReportControllerTest do
- use Pleroma.Web.ConnCase
-
- alias Pleroma.Web.CommonAPI
-
- import Pleroma.Factory
-
- setup do: oauth_access(["write:reports"])
-
- setup do
- target_user = insert(:user)
-
- {:ok, activity} = CommonAPI.post(target_user, %{status: "foobar"})
-
- [target_user: target_user, activity: activity]
- end
-
- test "submit a basic report", %{conn: conn, target_user: target_user} do
- assert %{"action_taken" => false, "id" => _} =
- conn
- |> put_req_header("content-type", "application/json")
- |> post("/api/v1/reports", %{"account_id" => target_user.id})
- |> json_response_and_validate_schema(200)
- end
-
- test "submit a report with statuses and comment", %{
- conn: conn,
- target_user: target_user,
- activity: activity
- } do
- assert %{"action_taken" => false, "id" => _} =
- conn
- |> put_req_header("content-type", "application/json")
- |> post("/api/v1/reports", %{
- "account_id" => target_user.id,
- "status_ids" => [activity.id],
- "comment" => "bad status!",
- "forward" => "false"
- })
- |> json_response_and_validate_schema(200)
- end
-
- test "account_id is required", %{
- conn: conn,
- activity: activity
- } do
- assert %{"error" => "Missing field: account_id."} =
- conn
- |> put_req_header("content-type", "application/json")
- |> post("/api/v1/reports", %{"status_ids" => [activity.id]})
- |> json_response_and_validate_schema(400)
- end
-
- test "comment must be up to the size specified in the config", %{
- conn: conn,
- target_user: target_user
- } do
- max_size = Pleroma.Config.get([:instance, :max_report_comment_size], 1000)
- comment = String.pad_trailing("a", max_size + 1, "a")
-
- error = %{"error" => "Comment must be up to #{max_size} characters"}
-
- assert ^error =
- conn
- |> put_req_header("content-type", "application/json")
- |> post("/api/v1/reports", %{"account_id" => target_user.id, "comment" => comment})
- |> json_response_and_validate_schema(400)
- end
-
- test "returns error when account is not exist", %{
- conn: conn,
- activity: activity
- } do
- conn =
- conn
- |> put_req_header("content-type", "application/json")
- |> post("/api/v1/reports", %{"status_ids" => [activity.id], "account_id" => "foo"})
-
- assert json_response_and_validate_schema(conn, 400) == %{"error" => "Account not found"}
- end
-
- test "doesn't fail if an admin has no email", %{conn: conn, target_user: target_user} do
- insert(:user, %{is_admin: true, email: nil})
-
- assert %{"action_taken" => false, "id" => _} =
- conn
- |> put_req_header("content-type", "application/json")
- |> post("/api/v1/reports", %{"account_id" => target_user.id})
- |> json_response_and_validate_schema(200)
- end
-end