fix: adapt tests to updated deps
This commit is contained in:
parent
879695e7b6
commit
5aaca7aa37
4 changed files with 51 additions and 13 deletions
|
|
@ -6,12 +6,14 @@ defmodule Mv.Membership.JoinRequestSubmitEmailTest do
|
|||
(to the request email, with confirm link). Uses Swoosh.Adapters.Test; no integration.
|
||||
Sender is wired in implementation; test fails until then (TDD).
|
||||
"""
|
||||
use Mv.DataCase, async: true
|
||||
use Mv.DataCase, async: false
|
||||
|
||||
import Swoosh.TestAssertions
|
||||
|
||||
alias Mv.Membership
|
||||
|
||||
setup :set_swoosh_global
|
||||
|
||||
@valid_submit_attrs %{
|
||||
email: "join#{System.unique_integer([:positive])}@example.com"
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,12 +5,14 @@ defmodule Mv.MailerTest do
|
|||
Uses Swoosh.Adapters.Test (configured in test.exs); no real SMTP. Asserts
|
||||
success/error contract and that one test email is sent on success.
|
||||
"""
|
||||
use Mv.DataCase, async: true
|
||||
use Mv.DataCase, async: false
|
||||
|
||||
import Swoosh.TestAssertions
|
||||
|
||||
alias Mv.Mailer
|
||||
|
||||
setup :set_swoosh_global
|
||||
|
||||
describe "send_test_email/1" do
|
||||
test "returns {:ok, email} and sends one email with expected subject/body when successful" do
|
||||
to_email = "test-#{System.unique_integer([:positive])}@example.com"
|
||||
|
|
|
|||
|
|
@ -286,16 +286,33 @@ defmodule MvWeb.AuthControllerTest do
|
|||
describe "when OIDC-only is enabled" do
|
||||
setup %{conn: authenticated_conn} do
|
||||
{:ok, settings} = Membership.get_settings()
|
||||
original_oidc_only = Map.get(settings, :oidc_only, false)
|
||||
{:ok, _} = Membership.update_settings(settings, %{oidc_only: true})
|
||||
|
||||
prev = %{
|
||||
oidc_only: settings.oidc_only,
|
||||
oidc_client_id: settings.oidc_client_id,
|
||||
oidc_base_url: settings.oidc_base_url,
|
||||
oidc_redirect_uri: settings.oidc_redirect_uri,
|
||||
oidc_client_secret: settings.oidc_client_secret
|
||||
}
|
||||
|
||||
# OIDC must be cleared so GET /sign-in is not redirected by OidcOnlySignInRedirect
|
||||
# (seeds may leave a full OIDC config). Rejection is enforced in AuthController.success/4.
|
||||
{:ok, _} =
|
||||
Membership.update_settings(settings, %{
|
||||
oidc_only: true,
|
||||
oidc_client_id: nil,
|
||||
oidc_base_url: nil,
|
||||
oidc_redirect_uri: nil,
|
||||
oidc_client_secret: nil
|
||||
})
|
||||
|
||||
conn = build_unauthenticated_conn(authenticated_conn)
|
||||
{:ok, conn: conn, original_oidc_only: original_oidc_only}
|
||||
{:ok, conn: conn, original_sign_in_settings: prev}
|
||||
end
|
||||
|
||||
test "password sign-in is rejected and redirects to sign-in with error", %{
|
||||
conn: conn,
|
||||
original_oidc_only: original
|
||||
original_sign_in_settings: prev
|
||||
} do
|
||||
try do
|
||||
_user =
|
||||
|
|
@ -326,7 +343,7 @@ defmodule MvWeb.AuthControllerTest do
|
|||
end
|
||||
after
|
||||
{:ok, s} = Membership.get_settings()
|
||||
Membership.update_settings(s, %{oidc_only: original})
|
||||
Membership.update_settings(s, prev)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
@ -341,7 +358,8 @@ defmodule MvWeb.AuthControllerTest do
|
|||
oidc_only: settings.oidc_only,
|
||||
oidc_client_id: settings.oidc_client_id,
|
||||
oidc_base_url: settings.oidc_base_url,
|
||||
oidc_redirect_uri: settings.oidc_redirect_uri
|
||||
oidc_redirect_uri: settings.oidc_redirect_uri,
|
||||
oidc_client_secret: settings.oidc_client_secret
|
||||
}
|
||||
|
||||
{:ok, _} =
|
||||
|
|
@ -372,7 +390,8 @@ defmodule MvWeb.AuthControllerTest do
|
|||
oidc_only: settings.oidc_only,
|
||||
oidc_client_id: settings.oidc_client_id,
|
||||
oidc_base_url: settings.oidc_base_url,
|
||||
oidc_redirect_uri: settings.oidc_redirect_uri
|
||||
oidc_redirect_uri: settings.oidc_redirect_uri,
|
||||
oidc_client_secret: settings.oidc_client_secret
|
||||
}
|
||||
|
||||
{:ok, _} =
|
||||
|
|
@ -398,8 +417,23 @@ defmodule MvWeb.AuthControllerTest do
|
|||
|
||||
test "returns 200 when OIDC-only but OIDC not configured", %{conn: authenticated_conn} do
|
||||
{:ok, settings} = Membership.get_settings()
|
||||
original_oidc_only = Map.get(settings, :oidc_only, false)
|
||||
{:ok, _} = Membership.update_settings(settings, %{oidc_only: true})
|
||||
|
||||
prev = %{
|
||||
oidc_only: settings.oidc_only,
|
||||
oidc_client_id: settings.oidc_client_id,
|
||||
oidc_base_url: settings.oidc_base_url,
|
||||
oidc_redirect_uri: settings.oidc_redirect_uri,
|
||||
oidc_client_secret: settings.oidc_client_secret
|
||||
}
|
||||
|
||||
{:ok, _} =
|
||||
Membership.update_settings(settings, %{
|
||||
oidc_only: true,
|
||||
oidc_client_id: nil,
|
||||
oidc_base_url: nil,
|
||||
oidc_redirect_uri: nil,
|
||||
oidc_client_secret: nil
|
||||
})
|
||||
|
||||
try do
|
||||
conn = build_unauthenticated_conn(authenticated_conn)
|
||||
|
|
@ -407,7 +441,7 @@ defmodule MvWeb.AuthControllerTest do
|
|||
assert conn.status == 200
|
||||
after
|
||||
{:ok, s} = Membership.get_settings()
|
||||
Membership.update_settings(s, %{oidc_only: original_oidc_only})
|
||||
Membership.update_settings(s, prev)
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue