X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fplugs%2Flegacy_authentication_plug_test.exs;h=02f5300583d7d48b101e904b1892f9e2ff81a9e4;hb=ad5263c647aea65dbeb4c329825671895e0a8863;hp=90783f628aeb2cacbd3da8dff2da42644934c5a0;hpb=a3f54fca4d67fd7938ae00752c2cd409b6cf15ae;p=akkoma diff --git a/test/plugs/legacy_authentication_plug_test.exs b/test/plugs/legacy_authentication_plug_test.exs index 90783f628..02f530058 100644 --- a/test/plugs/legacy_authentication_plug_test.exs +++ b/test/plugs/legacy_authentication_plug_test.exs @@ -1,9 +1,15 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2018 Pleroma Authors +# SPDX-License-Identifier: AGPL-3.0-only + defmodule Pleroma.Plugs.LegacyAuthenticationPlugTest do - use Pleroma.Web.ConnCase, async: true + use Pleroma.Web.ConnCase alias Pleroma.Plugs.LegacyAuthenticationPlug alias Pleroma.User + import Mock + setup do # password is "password" user = %User{ @@ -30,18 +36,28 @@ defmodule Pleroma.Plugs.LegacyAuthenticationPlugTest do assert ret_conn == conn end - test "it authenticates the auth_user if present and password is correct", %{ - conn: conn, - user: user - } do + test "it authenticates the auth_user if present and password is correct and resets the password", + %{ + conn: conn, + user: user + } do conn = conn |> assign(:auth_credentials, %{username: "dude", password: "password"}) |> assign(:auth_user, user) conn = - conn - |> LegacyAuthenticationPlug.call(%{}) + with_mocks([ + {:crypt, [], [crypt: fn _password, password_hash -> password_hash end]}, + {User, [], + [ + reset_password: fn user, %{password: password, password_confirmation: password} -> + {:ok, user} + end + ]} + ]) do + LegacyAuthenticationPlug.call(conn, %{}) + end assert conn.assigns.user == user end