diff options
author | lain <lain@soykaf.club> | 2018-09-05 19:06:28 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2018-09-05 19:06:28 +0200 |
commit | 12bc73dd2833a22cce6a22841d33c992b1eb31fc (patch) | |
tree | 39a18d9d35ad8e28ce0b670c00c359338de31315 | |
parent | 32465b9939718f7bc6604594e0404340c3e02cc9 (diff) | |
download | pleroma-12bc73dd2833a22cce6a22841d33c992b1eb31fc.tar.gz pleroma-12bc73dd2833a22cce6a22841d33c992b1eb31fc.zip |
Add EnsureUserKeyPlug, smaller fixes
-rw-r--r-- | lib/pleroma/plugs/authentication_plug.ex | 2 | ||||
-rw-r--r-- | lib/pleroma/plugs/ensure_user_key_plug.ex | 14 | ||||
-rw-r--r-- | test/plugs/basic_auth_decoder_plug_test.exs | 2 | ||||
-rw-r--r-- | test/plugs/ensure_user_key_plug_test.exs | 25 |
4 files changed, 42 insertions, 1 deletions
diff --git a/lib/pleroma/plugs/authentication_plug.ex b/lib/pleroma/plugs/authentication_plug.ex index 8706b32cd..3ac301b97 100644 --- a/lib/pleroma/plugs/authentication_plug.ex +++ b/lib/pleroma/plugs/authentication_plug.ex @@ -37,4 +37,6 @@ defmodule Pleroma.Plugs.AuthenticationPlug do Pbkdf2.dummy_checkpw() conn end + + def call(conn, _), do: conn end diff --git a/lib/pleroma/plugs/ensure_user_key_plug.ex b/lib/pleroma/plugs/ensure_user_key_plug.ex new file mode 100644 index 000000000..05a567757 --- /dev/null +++ b/lib/pleroma/plugs/ensure_user_key_plug.ex @@ -0,0 +1,14 @@ +defmodule Pleroma.Plugs.EnsureUserKeyPlug do + import Plug.Conn + + def init(opts) do + opts + end + + def call(%{assigns: %{user: _}} = conn, _), do: conn + + def call(conn, _) do + conn + |> assign(:user, nil) + end +end diff --git a/test/plugs/basic_auth_decoder_plug_test.exs b/test/plugs/basic_auth_decoder_plug_test.exs index 317f7d167..a4876fef7 100644 --- a/test/plugs/basic_auth_decoder_plug_test.exs +++ b/test/plugs/basic_auth_decoder_plug_test.exs @@ -1,4 +1,4 @@ -defmodule Pleroma.Plugs.AuthenticationPlugTest do +defmodule Pleroma.Plugs.BasicAuthDecoderPlugTest do use Pleroma.Web.ConnCase, async: true alias Pleroma.Plugs.BasicAuthDecoderPlug diff --git a/test/plugs/ensure_user_key_plug_test.exs b/test/plugs/ensure_user_key_plug_test.exs new file mode 100644 index 000000000..9beda838e --- /dev/null +++ b/test/plugs/ensure_user_key_plug_test.exs @@ -0,0 +1,25 @@ +defmodule Pleroma.Plugs.EnsureUserKeyPlugTest do + use Pleroma.Web.ConnCase, async: true + + alias Pleroma.Plugs.EnsureUserKeyPlug + + test "if the conn has a user key set, it does nothing", %{conn: conn} do + conn = + conn + |> assign(:user, 1) + + ret_conn = + conn + |> EnsureUserKeyPlug.call(%{}) + + assert conn == ret_conn + end + + test "if the conn has no key set, it sets it to nil", %{conn: conn} do + conn = + conn + |> EnsureUserKeyPlug.call(%{}) + + assert Map.has_key?(conn.assigns, :user) + end +end |