X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fpleroma%2Fweb%2Fpleroma_api%2Fcontrollers%2Fchat_controller_test.exs;h=1114da242aad153c53d708a102a82b6fdabfaae6;hb=dc9f66749c85352e0d7761ae2b9b8663a3aa3e3a;hp=372613b8bdeb1e9b8d160f4aab37fcf012c9c96c;hpb=79bc4bcc3cb89bb5860470626df5f02991b95885;p=akkoma diff --git a/test/pleroma/web/pleroma_api/controllers/chat_controller_test.exs b/test/pleroma/web/pleroma_api/controllers/chat_controller_test.exs index 372613b8b..1114da242 100644 --- a/test/pleroma/web/pleroma_api/controllers/chat_controller_test.exs +++ b/test/pleroma/web/pleroma_api/controllers/chat_controller_test.exs @@ -106,6 +106,9 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do end test "it works with an attachment", %{conn: conn, user: user} do + clear_config([Pleroma.Upload, :uploader], Pleroma.Uploaders.Local) + clear_config([Pleroma.Uploaders.Local, :uploads], "uploads") + file = %Plug.Upload{ content_type: "image/jpeg", path: Path.absname("test/fixtures/image.jpg"), @@ -304,7 +307,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do end end - describe "GET /api/v1/pleroma/chats" do + describe "GET /api/v2/pleroma/chats" do setup do: oauth_access(["read:chats"]) test "it does not return chats with deleted users", %{conn: conn, user: user} do @@ -316,7 +319,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") |> json_response_and_validate_schema(200) assert length(result) == 0 @@ -329,7 +332,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") |> json_response_and_validate_schema(200) assert length(result) == 1 @@ -338,7 +341,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") |> json_response_and_validate_schema(200) assert length(result) == 0 @@ -351,7 +354,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") |> json_response_and_validate_schema(200) assert length(result) == 1 @@ -360,20 +363,20 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") |> json_response_and_validate_schema(200) assert length(result) == 0 result = conn - |> get("/api/v1/pleroma/chats?with_muted=true") + |> get("/api/v2/pleroma/chats?with_muted=true") |> json_response_and_validate_schema(200) assert length(result) == 1 end - test "it returns all chats", %{conn: conn, user: user} do + test "it paginates chats", %{conn: conn, user: user} do Enum.each(1..30, fn _ -> recipient = insert(:user) {:ok, _} = Chat.get_or_create(user.id, recipient.ap_id) @@ -381,10 +384,18 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") + |> json_response_and_validate_schema(200) + + assert length(result) == 20 + last_id = List.last(result)["id"] + + result = + conn + |> get("/api/v2/pleroma/chats?max_id=#{last_id}") |> json_response_and_validate_schema(200) - assert length(result) == 30 + assert length(result) == 10 end test "it return a list of chats the current user is participating in, in descending order of updates", @@ -405,7 +416,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") |> json_response_and_validate_schema(200) ids = Enum.map(result, & &1["id"]) @@ -432,7 +443,7 @@ defmodule Pleroma.Web.PleromaAPI.ChatControllerTest do result = conn - |> get("/api/v1/pleroma/chats") + |> get("/api/v2/pleroma/chats") |> json_response_and_validate_schema(200) account_ids = Enum.map(result, &get_in(&1, ["account", "id"]))