summaryrefslogtreecommitdiff
path: root/test/web/admin_api/controllers/admin_api_controller_test.exs
diff options
context:
space:
mode:
authorlain <lain@soykaf.club>2020-09-17 11:56:30 +0000
committerlain <lain@soykaf.club>2020-09-17 11:56:30 +0000
commit5426eb59976044f88247486da86a91b8f9eb35b5 (patch)
treec3356281c7f21a8f6e41230e01b2d413a7f5903c /test/web/admin_api/controllers/admin_api_controller_test.exs
parentc5acbf8a1bd1a14ea82610cb3f69b8ebbb3ea28b (diff)
parent5e3c70afa5c02926a5578628431487e92b2175e9 (diff)
downloadpleroma-5426eb59976044f88247486da86a91b8f9eb35b5.tar.gz
pleroma-5426eb59976044f88247486da86a91b8f9eb35b5.zip
Merge branch 'chat-moderation' into 'develop'
Chat moderation MVP See merge request pleroma/pleroma!2937
Diffstat (limited to 'test/web/admin_api/controllers/admin_api_controller_test.exs')
-rw-r--r--test/web/admin_api/controllers/admin_api_controller_test.exs50
1 files changed, 50 insertions, 0 deletions
diff --git a/test/web/admin_api/controllers/admin_api_controller_test.exs b/test/web/admin_api/controllers/admin_api_controller_test.exs
index 3bc88c6a9..e4d3512de 100644
--- a/test/web/admin_api/controllers/admin_api_controller_test.exs
+++ b/test/web/admin_api/controllers/admin_api_controller_test.exs
@@ -1510,6 +1510,56 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
end
end
+ describe "GET /api/pleroma/admin/users/:nickname/chats" do
+ setup do
+ user = insert(:user)
+ recipients = insert_list(3, :user)
+
+ Enum.each(recipients, fn recipient ->
+ CommonAPI.post_chat_message(user, recipient, "yo")
+ end)
+
+ %{user: user}
+ end
+
+ test "renders user's chats", %{conn: conn, user: user} do
+ conn = get(conn, "/api/pleroma/admin/users/#{user.nickname}/chats")
+
+ assert json_response(conn, 200) |> length() == 3
+ end
+ end
+
+ describe "GET /api/pleroma/admin/users/:nickname/chats unauthorized" do
+ setup do
+ user = insert(:user)
+ recipient = insert(:user)
+ CommonAPI.post_chat_message(user, recipient, "yo")
+ %{conn: conn} = oauth_access(["read:chats"])
+ %{conn: conn, user: user}
+ end
+
+ test "returns 403", %{conn: conn, user: user} do
+ conn
+ |> get("/api/pleroma/admin/users/#{user.nickname}/chats")
+ |> json_response(403)
+ end
+ end
+
+ describe "GET /api/pleroma/admin/users/:nickname/chats unauthenticated" do
+ setup do
+ user = insert(:user)
+ recipient = insert(:user)
+ CommonAPI.post_chat_message(user, recipient, "yo")
+ %{conn: build_conn(), user: user}
+ end
+
+ test "returns 403", %{conn: conn, user: user} do
+ conn
+ |> get("/api/pleroma/admin/users/#{user.nickname}/chats")
+ |> json_response(403)
+ end
+ end
+
describe "GET /api/pleroma/admin/moderation_log" do
setup do
moderator = insert(:user, is_moderator: true)