diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/web/admin_api/controllers/admin_api_controller_test.exs | 24 | ||||
-rw-r--r-- | test/web/admin_api/controllers/status_controller_test.exs | 37 |
2 files changed, 39 insertions, 22 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 2c317e0fe..a0c11a354 100644 --- a/test/web/admin_api/controllers/admin_api_controller_test.exs +++ b/test/web/admin_api/controllers/admin_api_controller_test.exs @@ -350,7 +350,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do conn = get(conn, "/api/pleroma/admin/users/#{user.nickname}") - assert "Not found" == json_response(conn, 404) + assert %{"error" => "Not found"} == json_response(conn, 404) end end @@ -683,7 +683,10 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do conn = post(conn, "/api/pleroma/admin/users/email_invite?email=foo@bar.com&name=JD") assert json_response(conn, :bad_request) == - "To send invites you need to set the `invites_enabled` option to true." + %{ + "error" => + "To send invites you need to set the `invites_enabled` option to true." + } end test "it returns 500 if `registrations_open` is enabled", %{conn: conn} do @@ -693,7 +696,10 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do conn = post(conn, "/api/pleroma/admin/users/email_invite?email=foo@bar.com&name=JD") assert json_response(conn, :bad_request) == - "To send invites you need to set the `registrations_open` option to false." + %{ + "error" => + "To send invites you need to set the `registrations_open` option to false." + } end end @@ -1307,7 +1313,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do |> put("/api/pleroma/admin/users/disable_mfa", %{nickname: "nickname"}) |> json_response(404) - assert response == "Not found" + assert response == %{"error" => "Not found"} end end @@ -1413,7 +1419,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do test "with invalid token", %{conn: conn} do conn = post(conn, "/api/pleroma/admin/users/revoke_invite", %{"token" => "foo"}) - assert json_response(conn, :not_found) == "Not found" + assert json_response(conn, :not_found) == %{"error" => "Not found"} end end @@ -1440,7 +1446,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do test "returns 404 when report id is invalid", %{conn: conn} do conn = get(conn, "/api/pleroma/admin/reports/test") - assert json_response(conn, :not_found) == "Not found" + assert json_response(conn, :not_found) == %{"error" => "Not found"} end end @@ -1705,7 +1711,9 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do conn = get(conn, "/api/pleroma/admin/config") assert json_response(conn, 400) == - "To use this endpoint you need to enable configuration from database." + %{ + "error" => "To use this endpoint you need to enable configuration from database." + } end test "with settings only in db", %{conn: conn} do @@ -1827,7 +1835,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do conn = post(conn, "/api/pleroma/admin/config", %{"configs" => []}) assert json_response(conn, 400) == - "To use this endpoint you need to enable configuration from database." + %{"error" => "To use this endpoint you need to enable configuration from database."} end describe "POST /api/pleroma/admin/config" do diff --git a/test/web/admin_api/controllers/status_controller_test.exs b/test/web/admin_api/controllers/status_controller_test.exs index 8ecc78491..124d8dc2e 100644 --- a/test/web/admin_api/controllers/status_controller_test.exs +++ b/test/web/admin_api/controllers/status_controller_test.exs @@ -30,7 +30,7 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do test "not found", %{conn: conn} do assert conn |> get("/api/pleroma/admin/statuses/not_found") - |> json_response(:not_found) + |> json_response_and_validate_schema(:not_found) end test "shows activity", %{conn: conn} do @@ -39,7 +39,7 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do response = conn |> get("/api/pleroma/admin/statuses/#{activity.id}") - |> json_response(200) + |> json_response_and_validate_schema(200) assert response["id"] == activity.id end @@ -55,8 +55,9 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do test "toggle sensitive flag", %{conn: conn, id: id, admin: admin} do response = conn + |> put_req_header("content-type", "application/json") |> put("/api/pleroma/admin/statuses/#{id}", %{"sensitive" => "true"}) - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert response["sensitive"] @@ -67,8 +68,9 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do response = conn + |> put_req_header("content-type", "application/json") |> put("/api/pleroma/admin/statuses/#{id}", %{"sensitive" => "false"}) - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) refute response["sensitive"] end @@ -76,8 +78,9 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do test "change visibility flag", %{conn: conn, id: id, admin: admin} do response = conn + |> put_req_header("content-type", "application/json") |> put("/api/pleroma/admin/statuses/#{id}", %{visibility: "public"}) - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert response["visibility"] == "public" @@ -88,23 +91,29 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do response = conn + |> put_req_header("content-type", "application/json") |> put("/api/pleroma/admin/statuses/#{id}", %{visibility: "private"}) - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert response["visibility"] == "private" response = conn + |> put_req_header("content-type", "application/json") |> put("/api/pleroma/admin/statuses/#{id}", %{visibility: "unlisted"}) - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) assert response["visibility"] == "unlisted" end test "returns 400 when visibility is unknown", %{conn: conn, id: id} do - conn = put(conn, "/api/pleroma/admin/statuses/#{id}", %{visibility: "test"}) + conn = + conn + |> put_req_header("content-type", "application/json") + |> put("/api/pleroma/admin/statuses/#{id}", %{visibility: "test"}) - assert json_response(conn, :bad_request) == "Unsupported visibility" + assert %{"error" => "test - Invalid value for enum."} = + json_response_and_validate_schema(conn, :bad_request) end end @@ -118,7 +127,7 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do test "deletes status", %{conn: conn, id: id, admin: admin} do conn |> delete("/api/pleroma/admin/statuses/#{id}") - |> json_response(:ok) + |> json_response_and_validate_schema(:ok) refute Activity.get_by_id(id) @@ -131,7 +140,7 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do test "returns 404 when the status does not exist", %{conn: conn} do conn = delete(conn, "/api/pleroma/admin/statuses/test") - assert json_response(conn, :not_found) == "Not found" + assert json_response_and_validate_schema(conn, :not_found) == %{"error" => "Not found"} end end @@ -151,7 +160,7 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do response = conn |> get("/api/pleroma/admin/statuses") - |> json_response(200) + |> json_response_and_validate_schema(200) refute "private" in Enum.map(response, & &1["visibility"]) assert length(response) == 3 @@ -166,7 +175,7 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do response = conn |> get("/api/pleroma/admin/statuses?local_only=true") - |> json_response(200) + |> json_response_and_validate_schema(200) assert length(response) == 1 end @@ -179,7 +188,7 @@ defmodule Pleroma.Web.AdminAPI.StatusControllerTest do {:ok, _} = CommonAPI.post(user, %{status: ".", visibility: "private"}) {:ok, _} = CommonAPI.post(user, %{status: ".", visibility: "public"}) conn = get(conn, "/api/pleroma/admin/statuses?godmode=true") - assert json_response(conn, 200) |> length() == 3 + assert json_response_and_validate_schema(conn, 200) |> length() == 3 end end end |