Browse Source

add tests for deactivated users for mongoose auth

pleroma-fe-2020-05-01-c67e9daf
fence 4 years ago
parent
commit
5c7cc10917
2 changed files with 15 additions and 1 deletions
  1. +6
    -1
      lib/pleroma/web/mongooseim/mongoose_im_controller.ex
  2. +9
    -0
      test/web/mongooseim/mongoose_im_controller_test.exs

+ 6
- 1
lib/pleroma/web/mongooseim/mongoose_im_controller.ex View File

@@ -27,8 +27,13 @@ defmodule Pleroma.Web.MongooseIM.MongooseIMController do

def check_password(conn, %{"user" => username, "pass" => password}) do
user = Repo.get_by(User, nickname: username, local: true)
state = case user do
nil -> nil
_ -> User.account_status(user)
end

case User.account_status(user) do
case state do
:deactivated ->
conn
|> put_status(:not_found)


+ 9
- 0
test/web/mongooseim/mongoose_im_controller_test.exs View File

@@ -34,6 +34,7 @@ defmodule Pleroma.Web.MongooseIMController do

test "/check_password", %{conn: conn} do
user = insert(:user, password_hash: Comeonin.Pbkdf2.hashpwsalt("cool"))
_deactivated_user = insert(:user, nickname: "konata", local: false, deactivated: true)

res =
conn
@@ -51,6 +52,14 @@ defmodule Pleroma.Web.MongooseIMController do

res =
conn
|> get(mongoose_im_path(conn, :check_password), user: "konata", pass: "1337")
|> json_response(404)

assert res == false


res =
conn
|> get(mongoose_im_path(conn, :check_password), user: "nobody", pass: "cool")
|> json_response(404)



Loading…
Cancel
Save