diff options
Diffstat (limited to 'test/web/admin_api')
| -rw-r--r-- | test/web/admin_api/admin_api_controller_test.exs | 61 | 
1 files changed, 52 insertions, 9 deletions
| diff --git a/test/web/admin_api/admin_api_controller_test.exs b/test/web/admin_api/admin_api_controller_test.exs index 2f53416a3..ca6bd0e97 100644 --- a/test/web/admin_api/admin_api_controller_test.exs +++ b/test/web/admin_api/admin_api_controller_test.exs @@ -5,7 +5,6 @@  defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do    use Pleroma.Web.ConnCase -  alias Pleroma.Repo    alias Pleroma.User    import Pleroma.Factory @@ -75,6 +74,50 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do      end    end +  describe "/api/pleroma/admin/user/follow" do +    test "allows to force-follow another user" do +      admin = insert(:user, info: %{is_admin: true}) +      user = insert(:user) +      follower = insert(:user) + +      build_conn() +      |> assign(:user, admin) +      |> put_req_header("accept", "application/json") +      |> post("/api/pleroma/admin/user/follow", %{ +        "follower" => follower.nickname, +        "followed" => user.nickname +      }) + +      user = User.get_by_id(user.id) +      follower = User.get_by_id(follower.id) + +      assert User.following?(follower, user) +    end +  end + +  describe "/api/pleroma/admin/user/unfollow" do +    test "allows to force-unfollow another user" do +      admin = insert(:user, info: %{is_admin: true}) +      user = insert(:user) +      follower = insert(:user) + +      User.follow(follower, user) + +      build_conn() +      |> assign(:user, admin) +      |> put_req_header("accept", "application/json") +      |> post("/api/pleroma/admin/user/unfollow", %{ +        "follower" => follower.nickname, +        "followed" => user.nickname +      }) + +      user = User.get_by_id(user.id) +      follower = User.get_by_id(follower.id) + +      refute User.following?(follower, user) +    end +  end +    describe "PUT /api/pleroma/admin/users/tag" do      setup do        admin = insert(:user, info: %{is_admin: true}) @@ -101,13 +144,13 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do        user2: user2      } do        assert json_response(conn, :no_content) -      assert Repo.get(User, user1.id).tags == ["x", "foo", "bar"] -      assert Repo.get(User, user2.id).tags == ["y", "foo", "bar"] +      assert User.get_by_id(user1.id).tags == ["x", "foo", "bar"] +      assert User.get_by_id(user2.id).tags == ["y", "foo", "bar"]      end      test "it does not modify tags of not specified users", %{conn: conn, user3: user3} do        assert json_response(conn, :no_content) -      assert Repo.get(User, user3.id).tags == ["unchanged"] +      assert User.get_by_id(user3.id).tags == ["unchanged"]      end    end @@ -137,13 +180,13 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do        user2: user2      } do        assert json_response(conn, :no_content) -      assert Repo.get(User, user1.id).tags == [] -      assert Repo.get(User, user2.id).tags == ["y"] +      assert User.get_by_id(user1.id).tags == [] +      assert User.get_by_id(user2.id).tags == ["y"]      end      test "it does not modify tags of not specified users", %{conn: conn, user3: user3} do        assert json_response(conn, :no_content) -      assert Repo.get(User, user3.id).tags == ["unchanged"] +      assert User.get_by_id(user3.id).tags == ["unchanged"]      end    end @@ -213,7 +256,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do          conn          |> put("/api/pleroma/admin/activation_status/#{user.nickname}", %{status: false}) -      user = Repo.get(User, user.id) +      user = User.get_by_id(user.id)        assert user.info.deactivated == true        assert json_response(conn, :no_content)      end @@ -225,7 +268,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIControllerTest do          conn          |> put("/api/pleroma/admin/activation_status/#{user.nickname}", %{status: true}) -      user = Repo.get(User, user.id) +      user = User.get_by_id(user.id)        assert user.info.deactivated == false        assert json_response(conn, :no_content)      end | 
