fix: adapt tests to updated deps
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing

This commit is contained in:
Simon 2026-04-07 15:52:19 +02:00
parent 879695e7b6
commit 5aaca7aa37
Signed by: simon
GPG key ID: 40E7A58C4AA1EDB2
4 changed files with 51 additions and 13 deletions

View file

@ -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"
}

View file

@ -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"

View file

@ -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