diff options
Diffstat (limited to 'test/web/twitter_api')
| -rw-r--r-- | test/web/twitter_api/twitter_api_controller_test.exs | 58 | ||||
| -rw-r--r-- | test/web/twitter_api/views/user_view_test.exs | 24 | 
2 files changed, 64 insertions, 18 deletions
| diff --git a/test/web/twitter_api/twitter_api_controller_test.exs b/test/web/twitter_api/twitter_api_controller_test.exs index 6777354c3..855ae1526 100644 --- a/test/web/twitter_api/twitter_api_controller_test.exs +++ b/test/web/twitter_api/twitter_api_controller_test.exs @@ -62,7 +62,8 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do          |> post("/api/account/verify_credentials.json")          |> json_response(200) -      assert response == UserView.render("show.json", %{user: user, token: response["token"]}) +      assert response == +               UserView.render("show.json", %{user: user, token: response["token"], for: user})      end    end @@ -107,7 +108,7 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do          |> post(request_path, %{status: "Nice meme.", visibility: "private"})        assert json_response(conn, 200) == -               ActivityRepresenter.to_map(Repo.one(Activity), %{user: user}) +               ActivityRepresenter.to_map(Repo.one(Activity), %{user: user, for: user})      end    end @@ -418,6 +419,7 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        assert Enum.at(response, 0) ==                 ActivityRepresenter.to_map(activity, %{                   user: current_user, +                 for: current_user,                   mentioned: [current_user]                 })      end @@ -547,7 +549,9 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        response = json_response(conn, 200)        assert length(response) == 1 -      assert Enum.at(response, 0) == ActivityRepresenter.to_map(activity, %{user: current_user}) + +      assert Enum.at(response, 0) == +               ActivityRepresenter.to_map(activity, %{user: current_user, for: current_user})      end      test "with credentials with user_id", %{conn: conn, user: current_user} do @@ -1257,8 +1261,8 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do               )      end -    test "it returns empty when hide_followings is set to true", %{conn: conn} do -      user = insert(:user, %{info: %{hide_followings: true}}) +    test "it returns empty when hide_follows is set to true", %{conn: conn} do +      user = insert(:user, %{info: %{hide_follows: true}})        followed_one = insert(:user)        followed_two = insert(:user)        not_followed = insert(:user) @@ -1274,11 +1278,11 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        assert [] == json_response(conn, 200)      end -    test "it returns friends when hide_followings is set to true if the user themselves request it", +    test "it returns friends when hide_follows is set to true if the user themselves request it",           %{             conn: conn           } do -      user = insert(:user, %{info: %{hide_followings: true}}) +      user = insert(:user, %{info: %{hide_follows: true}})        followed_one = insert(:user)        followed_two = insert(:user)        _not_followed = insert(:user) @@ -1366,27 +1370,27 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        assert json_response(conn, 200) == UserView.render("user.json", %{user: user, for: user})      end -    test "it sets and un-sets hide_followings", %{conn: conn} do +    test "it sets and un-sets hide_follows", %{conn: conn} do        user = insert(:user)        conn        |> assign(:user, user)        |> post("/api/account/update_profile.json", %{ -        "hide_followings" => "true" +        "hide_follows" => "true"        })        user = Repo.get!(User, user.id) -      assert user.info.hide_followings == true +      assert user.info.hide_follows == true        conn =          conn          |> assign(:user, user)          |> post("/api/account/update_profile.json", %{ -          "hide_followings" => "false" +          "hide_follows" => "false"          })        user = Repo.get!(User, user.id) -      assert user.info.hide_followings == false +      assert user.info.hide_follows == false        assert json_response(conn, 200) == UserView.render("user.json", %{user: user, for: user})      end @@ -1414,6 +1418,30 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        assert json_response(conn, 200) == UserView.render("user.json", %{user: user, for: user})      end +    test "it sets and un-sets show_role", %{conn: conn} do +      user = insert(:user) + +      conn +      |> assign(:user, user) +      |> post("/api/account/update_profile.json", %{ +        "show_role" => "true" +      }) + +      user = Repo.get!(User, user.id) +      assert user.info.show_role == true + +      conn = +        conn +        |> assign(:user, user) +        |> post("/api/account/update_profile.json", %{ +          "show_role" => "false" +        }) + +      user = Repo.get!(User, user.id) +      assert user.info.show_role == false +      assert json_response(conn, 200) == UserView.render("user.json", %{user: user, for: user}) +    end +      test "it locks an account", %{conn: conn} do        user = insert(:user) @@ -1814,7 +1842,8 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        user = refresh_record(user) -      assert json_response(response, 200) == ActivityRepresenter.to_map(activity, %{user: user}) +      assert json_response(response, 200) == +               ActivityRepresenter.to_map(activity, %{user: user, for: user})      end    end @@ -1843,7 +1872,8 @@ defmodule Pleroma.Web.TwitterAPI.ControllerTest do        user = refresh_record(user) -      assert json_response(response, 200) == ActivityRepresenter.to_map(activity, %{user: user}) +      assert json_response(response, 200) == +               ActivityRepresenter.to_map(activity, %{user: user, for: user})      end    end  end diff --git a/test/web/twitter_api/views/user_view_test.exs b/test/web/twitter_api/views/user_view_test.exs index 0885afaec..95e52ca46 100644 --- a/test/web/twitter_api/views/user_view_test.exs +++ b/test/web/twitter_api/views/user_view_test.exs @@ -100,7 +100,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do        "locked" => false,        "default_scope" => "public",        "no_rich_text" => false, -      "hide_followings" => false, +      "hide_follows" => false,        "hide_followers" => false,        "fields" => [],        "pleroma" => %{ @@ -148,7 +148,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do        "locked" => false,        "default_scope" => "public",        "no_rich_text" => false, -      "hide_followings" => false, +      "hide_follows" => false,        "hide_followers" => false,        "fields" => [],        "pleroma" => %{ @@ -197,7 +197,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do        "locked" => false,        "default_scope" => "public",        "no_rich_text" => false, -      "hide_followings" => false, +      "hide_follows" => false,        "hide_followers" => false,        "fields" => [],        "pleroma" => %{ @@ -214,6 +214,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do      represented = UserView.render("show.json", %{user: user, for: user})      assert represented["rights"]["delete_others_notice"] +    assert represented["role"] == "moderator"    end    test "a user that is a admin" do @@ -221,6 +222,21 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do      represented = UserView.render("show.json", %{user: user, for: user})      assert represented["rights"]["admin"] +    assert represented["role"] == "admin" +  end + +  test "A moderator with hidden role for another user", %{user: user} do +    admin = insert(:user, %{info: %{is_moderator: true, show_role: false}}) +    represented = UserView.render("show.json", %{user: admin, for: user}) + +    assert represented["role"] == nil +  end + +  test "An admin with hidden role for another user", %{user: user} do +    admin = insert(:user, %{info: %{is_admin: true, show_role: false}}) +    represented = UserView.render("show.json", %{user: admin, for: user}) + +    assert represented["role"] == nil    end    test "A blocked user for the blocker" do @@ -260,7 +276,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do        "locked" => false,        "default_scope" => "public",        "no_rich_text" => false, -      "hide_followings" => false, +      "hide_follows" => false,        "hide_followers" => false,        "fields" => [],        "pleroma" => %{ | 
