projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'develop' into gun
[akkoma]
/
test
/
web
/
mastodon_api
/
controllers
/
conversation_controller_test.exs
diff --git
a/test/web/mastodon_api/controllers/conversation_controller_test.exs
b/test/web/mastodon_api/controllers/conversation_controller_test.exs
index 2a1223b182a9abc4e4426efe355ee5fcf95eab7c..801b0259b90a140c184b8d2006254a14f3ced4fd 100644
(file)
--- a/
test/web/mastodon_api/controllers/conversation_controller_test.exs
+++ b/
test/web/mastodon_api/controllers/conversation_controller_test.exs
@@
-1,5
+1,5
@@
# Pleroma: A lightweight social networking server
# Pleroma: A lightweight social networking server
-# Copyright © 2017-20
19
Pleroma Authors <https://pleroma.social/>
+# Copyright © 2017-20
20
Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
@@
-10,8
+10,9
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
import Pleroma.Factory
import Pleroma.Factory
- test "returns a list of conversations", %{conn: conn} do
- user_one = insert(:user)
+ setup do: oauth_access(["read:statuses"])
+
+ test "returns a list of conversations", %{user: user_one, conn: conn} do
user_two = insert(:user)
user_three = insert(:user)
user_two = insert(:user)
user_three = insert(:user)
@@
-33,10
+34,7
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
"visibility" => "private"
})
"visibility" => "private"
})
- res_conn =
- conn
- |> assign(:user, user_one)
- |> get("/api/v1/conversations")
+ res_conn = get(conn, "/api/v1/conversations")
assert response = json_response(res_conn, 200)
assert response = json_response(res_conn, 200)
@@
-59,8
+57,7
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
assert User.get_cached_by_id(user_one.id).unread_conversation_count == 0
end
assert User.get_cached_by_id(user_one.id).unread_conversation_count == 0
end
- test "filters conversations by recipients", %{conn: conn} do
- user_one = insert(:user)
+ test "filters conversations by recipients", %{user: user_one, conn: conn} do
user_two = insert(:user)
user_three = insert(:user)
user_two = insert(:user)
user_three = insert(:user)
@@
-96,7
+93,6
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
[conversation1, conversation2] =
conn
[conversation1, conversation2] =
conn
- |> assign(:user, user_one)
|> get("/api/v1/conversations", %{"recipients" => [user_two.id]})
|> json_response(200)
|> get("/api/v1/conversations", %{"recipients" => [user_two.id]})
|> json_response(200)
@@
-105,15
+101,13
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
[conversation1] =
conn
[conversation1] =
conn
- |> assign(:user, user_one)
|> get("/api/v1/conversations", %{"recipients" => [user_two.id, user_three.id]})
|> json_response(200)
assert conversation1["last_status"]["id"] == direct3.id
end
|> get("/api/v1/conversations", %{"recipients" => [user_two.id, user_three.id]})
|> json_response(200)
assert conversation1["last_status"]["id"] == direct3.id
end
- test "updates the last_status on reply", %{conn: conn} do
- user_one = insert(:user)
+ test "updates the last_status on reply", %{user: user_one, conn: conn} do
user_two = insert(:user)
{:ok, direct} =
user_two = insert(:user)
{:ok, direct} =
@@
-131,15
+125,13
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
[%{"last_status" => res_last_status}] =
conn
[%{"last_status" => res_last_status}] =
conn
- |> assign(:user, user_one)
|> get("/api/v1/conversations")
|> json_response(200)
assert res_last_status["id"] == direct_reply.id
end
|> get("/api/v1/conversations")
|> json_response(200)
assert res_last_status["id"] == direct_reply.id
end
- test "the user marks a conversation as read", %{conn: conn} do
- user_one = insert(:user)
+ test "the user marks a conversation as read", %{user: user_one, conn: conn} do
user_two = insert(:user)
{:ok, direct} =
user_two = insert(:user)
{:ok, direct} =
@@
-151,15
+143,21
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
assert User.get_cached_by_id(user_one.id).unread_conversation_count == 0
assert User.get_cached_by_id(user_two.id).unread_conversation_count == 1
assert User.get_cached_by_id(user_one.id).unread_conversation_count == 0
assert User.get_cached_by_id(user_two.id).unread_conversation_count == 1
-
[%{"id" => direct_conversation_id, "unread" => true}]
=
- conn
+
user_two_conn
=
+ build_conn()
|> assign(:user, user_two)
|> assign(:user, user_two)
+ |> assign(
+ :token,
+ insert(:oauth_token, user: user_two, scopes: ["read:statuses", "write:conversations"])
+ )
+
+ [%{"id" => direct_conversation_id, "unread" => true}] =
+ user_two_conn
|> get("/api/v1/conversations")
|> json_response(200)
%{"unread" => false} =
|> get("/api/v1/conversations")
|> json_response(200)
%{"unread" => false} =
- conn
- |> assign(:user, user_two)
+ user_two_conn
|> post("/api/v1/conversations/#{direct_conversation_id}/read")
|> json_response(200)
|> post("/api/v1/conversations/#{direct_conversation_id}/read")
|> json_response(200)
@@
-176,7
+174,6
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
[%{"unread" => true}] =
conn
[%{"unread" => true}] =
conn
- |> assign(:user, user_one)
|> get("/api/v1/conversations")
|> json_response(200)
|> get("/api/v1/conversations")
|> json_response(200)
@@
-195,8
+192,7
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
assert User.get_cached_by_id(user_two.id).unread_conversation_count == 0
end
assert User.get_cached_by_id(user_two.id).unread_conversation_count == 0
end
- test "(vanilla) Mastodon frontend behaviour", %{conn: conn} do
- user_one = insert(:user)
+ test "(vanilla) Mastodon frontend behaviour", %{user: user_one, conn: conn} do
user_two = insert(:user)
{:ok, direct} =
user_two = insert(:user)
{:ok, direct} =
@@
-205,10
+201,7
@@
defmodule Pleroma.Web.MastodonAPI.ConversationControllerTest do
"visibility" => "direct"
})
"visibility" => "direct"
})
- res_conn =
- conn
- |> assign(:user, user_one)
- |> get("/api/v1/statuses/#{direct.id}/context")
+ res_conn = get(conn, "/api/v1/statuses/#{direct.id}/context")
assert %{"ancestors" => [], "descendants" => []} == json_response(res_conn, 200)
end
assert %{"ancestors" => [], "descendants" => []} == json_response(res_conn, 200)
end