commit: 5e3c70afa5c02926a5578628431487e92b2175e9
parent e39ff2616b6694f97ab793bc60b5caa7b509f0b1
Author: lain <lain@soykaf.club>
Date: Thu, 17 Sep 2020 13:37:25 +0200
AdminAPI Chat tests: Remove factory.
The factory system doesn't work too well with how the chats are
done. Instead of tempting people to use it, let's rather use the
CommonAPI system for now.
Diffstat:
2 files changed, 8 insertions(+), 59 deletions(-)
diff --git a/test/support/factory.ex b/test/support/factory.ex
@@ -441,58 +441,4 @@ defmodule Pleroma.Factory do
phrase: "cofe"
}
end
-
- def chat_factory(attrs \\ %{}) do
- user = attrs[:user] || insert(:user)
- recipient = attrs[:recipient] || insert(:user)
-
- %Pleroma.Chat{
- user_id: user.id,
- recipient: recipient.ap_id
- }
- end
-
- def chat_message_factory(attrs \\ %{}) do
- text = sequence(:text, &"This is :moominmamma: chat message #{&1}")
- chat = attrs[:chat] || insert(:chat)
-
- data = %{
- "type" => "ChatMessage",
- "content" => text,
- "id" => Pleroma.Web.ActivityPub.Utils.generate_object_id(),
- "actor" => User.get_by_id(chat.user_id).ap_id,
- "to" => [chat.recipient],
- "published" => DateTime.utc_now() |> DateTime.to_iso8601()
- }
-
- %Pleroma.Object{
- data: merge_attributes(data, Map.get(attrs, :data, %{}))
- }
- end
-
- def chat_message_activity_factory(attrs \\ %{}) do
- chat = attrs[:chat] || insert(:chat)
- chat_message = attrs[:chat_message] || insert(:chat_message, chat: chat)
-
- data_attrs = attrs[:data_attrs] || %{}
- attrs = Map.drop(attrs, [:chat, :chat_message, :data_attrs])
-
- data =
- %{
- "id" => Pleroma.Web.ActivityPub.Utils.generate_activity_id(),
- "type" => "Create",
- "actor" => chat_message.data["actor"],
- "to" => chat_message.data["to"],
- "object" => chat_message.data["id"],
- "published" => DateTime.utc_now() |> DateTime.to_iso8601()
- }
- |> Map.merge(data_attrs)
-
- %Pleroma.Activity{
- data: data,
- actor: data["actor"],
- recipients: data["to"]
- }
- |> Map.merge(attrs)
- end
end
diff --git a/test/web/admin_api/controllers/admin_api_controller_test.exs b/test/web/admin_api/controllers/admin_api_controller_test.exs
@@ -1513,10 +1513,11 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/users/:nickname/chats" do
setup do
user = insert(:user)
+ recipients = insert_list(3, :user)
- insert(:chat, user: user)
- insert(:chat, user: user)
- insert(:chat, user: user)
+ Enum.each(recipients, fn recipient ->
+ CommonAPI.post_chat_message(user, recipient, "yo")
+ end)
%{user: user}
end
@@ -1531,7 +1532,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/users/:nickname/chats unauthorized" do
setup do
user = insert(:user)
- insert(:chat, user: user)
+ recipient = insert(:user)
+ CommonAPI.post_chat_message(user, recipient, "yo")
%{conn: conn} = oauth_access(["read:chats"])
%{conn: conn, user: user}
end
@@ -1546,7 +1548,8 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do
describe "GET /api/pleroma/admin/users/:nickname/chats unauthenticated" do
setup do
user = insert(:user)
- insert(:chat, user: user)
+ recipient = insert(:user)
+ CommonAPI.post_chat_message(user, recipient, "yo")
%{conn: build_conn(), user: user}
end