AccountController: Make setting accepts_chat_messages possible.
[akkoma] / test / web / mastodon_api / controllers / account_controller / update_credentials_test.exs
index 31f0edf970162551594adfcb80c1eda39090d159..37e33bc3381e11ae4426be7bda634aaaa2d13cd3 100644 (file)
@@ -108,6 +108,13 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController.UpdateCredentialsTest do
       assert user_data["locked"] == true
     end
 
+    test "updates the user's chat acceptance status", %{conn: conn} do
+      conn = patch(conn, "/api/v1/accounts/update_credentials", %{accepts_chat_messages: "false"})
+
+      assert user_data = json_response_and_validate_schema(conn, 200)
+      assert user_data["pleroma"]["accepts_chat_messages"] == false
+    end
+
     test "updates the user's allow_following_move", %{user: user, conn: conn} do
       assert user.allow_following_move == true
 
@@ -216,20 +223,10 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController.UpdateCredentialsTest do
         filename: "an_image.jpg"
       }
 
-      res =
-        conn
-        |> patch("/api/v1/accounts/update_credentials", %{"avatar" => new_avatar})
+      conn = patch(conn, "/api/v1/accounts/update_credentials", %{"avatar" => new_avatar})
 
-      assert user_response = json_response_and_validate_schema(res, 200)
+      assert user_response = json_response_and_validate_schema(conn, 200)
       assert user_response["avatar"] != User.avatar_url(user)
-
-      # Also removes it
-      res =
-        conn
-        |> patch("/api/v1/accounts/update_credentials", %{"avatar" => nil})
-
-      assert user_response = json_response_and_validate_schema(res, 200)
-      assert user_response["avatar"] == User.avatar_url(user)
     end
 
     test "updates the user's banner", %{user: user, conn: conn} do
@@ -239,21 +236,10 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController.UpdateCredentialsTest do
         filename: "an_image.jpg"
       }
 
-      res =
-        conn
-        |> patch("/api/v1/accounts/update_credentials", %{"header" => new_header})
+      conn = patch(conn, "/api/v1/accounts/update_credentials", %{"header" => new_header})
 
-      assert user_response = json_response_and_validate_schema(res, 200)
+      assert user_response = json_response_and_validate_schema(conn, 200)
       assert user_response["header"] != User.banner_url(user)
-
-      # Also removes it
-
-      res =
-        conn
-        |> patch("/api/v1/accounts/update_credentials", %{"header" => nil})
-
-      assert user_response = json_response_and_validate_schema(res, 200)
-      assert user_response["header"] == User.banner_url(user)
     end
 
     test "updates the user's background", %{conn: conn} do
@@ -263,25 +249,13 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController.UpdateCredentialsTest do
         filename: "an_image.jpg"
       }
 
-      res =
-        conn
-        |> patch("/api/v1/accounts/update_credentials", %{
+      conn =
+        patch(conn, "/api/v1/accounts/update_credentials", %{
           "pleroma_background_image" => new_header
         })
 
-      assert user_response = json_response_and_validate_schema(res, 200)
+      assert user_response = json_response_and_validate_schema(conn, 200)
       assert user_response["pleroma"]["background_image"]
-
-      # Also removes it
-
-      res =
-        conn
-        |> patch("/api/v1/accounts/update_credentials", %{
-          "pleroma_background_image" => nil
-        })
-
-      assert user_response = json_response_and_validate_schema(res, 200)
-      refute user_response["pleroma"]["background_image"]
     end
 
     test "requires 'write:accounts' permission" do