diff options
author | lain <lain@soykaf.club> | 2020-06-07 15:38:33 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-06-07 15:38:33 +0200 |
commit | 801e668a97adff4a33451dd7bb48799562ed8796 (patch) | |
tree | 414a1da874261e9ea1c0290428daaf8fa4831952 /test | |
parent | 2cdaac433035d8df3890eae098b55380b9e1c9fc (diff) | |
download | pleroma-801e668a97adff4a33451dd7bb48799562ed8796.tar.gz pleroma-801e668a97adff4a33451dd7bb48799562ed8796.zip |
ChatController: Add `last_read_id` option to mark_as_read.
Diffstat (limited to 'test')
-rw-r--r-- | test/web/pleroma_api/controllers/chat_controller_test.exs | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/web/pleroma_api/controllers/chat_controller_test.exs b/test/web/pleroma_api/controllers/chat_controller_test.exs index 2128fd9dd..63cd89c73 100644 --- a/test/web/pleroma_api/controllers/chat_controller_test.exs +++ b/test/web/pleroma_api/controllers/chat_controller_test.exs @@ -65,6 +65,30 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do assert cm_ref.unread == false end + + test "it given a `last_read_id` ", %{conn: conn, user: user} do + other_user = insert(:user) + + {:ok, create} = CommonAPI.post_chat_message(other_user, user, "sup") + {:ok, _create} = CommonAPI.post_chat_message(other_user, user, "sup part 2") + {:ok, chat} = Chat.get_or_create(user.id, other_user.ap_id) + object = Object.normalize(create, false) + cm_ref = MessageReference.for_chat_and_object(chat, object) + + assert cm_ref.unread == true + + result = + conn + |> put_req_header("content-type", "application/json") + |> post("/api/v1/pleroma/chats/#{chat.id}/read", %{"last_read_id" => cm_ref.id}) + |> json_response_and_validate_schema(200) + + assert result["unread"] == 1 + + cm_ref = MessageReference.for_chat_and_object(chat, object) + + assert cm_ref.unread == false + end end describe "POST /api/v1/pleroma/chats/:id/messages" do |