Add actor parameter to all tests requiring authorization

This commit adds actor: system_actor to all Ash operations in tests that
require authorization.
This commit is contained in:
Moritz 2026-01-23 20:00:24 +01:00
parent 686f69c9e9
commit 0f48a9b15a
Signed by: moritz
GPG key ID: 1020A035E5DD0824
75 changed files with 4686 additions and 2859 deletions

View file

@ -2,6 +2,11 @@ defmodule MvWeb.ProfileNavigationTest do
use MvWeb.ConnCase, async: true
import Phoenix.LiveViewTest
setup do
system_actor = Mv.Helpers.SystemActor.get_system_actor()
%{actor: system_actor}
end
describe "profile navigation" do
test "clicking profile button redirects to current user profile", %{conn: conn} do
# Setup: Create and login a user
@ -60,7 +65,7 @@ defmodule MvWeb.ProfileNavigationTest do
end
describe "profile navigation with OIDC user" do
test "shows correct profile data for OIDC user", %{conn: conn} do
test "shows correct profile data for OIDC user", %{conn: conn, actor: actor} do
# Setup: Create OIDC user with sub claim
user_info = %{
"sub" => "oidc_123",
@ -78,7 +83,7 @@ defmodule MvWeb.ProfileNavigationTest do
user_info: user_info,
oauth_tokens: oauth_tokens
})
|> Ash.create!(domain: Mv.Accounts)
|> Ash.create!(domain: Mv.Accounts, actor: actor)
# Login user via OIDC
conn = sign_in_user_via_oidc(conn, user)
@ -94,7 +99,10 @@ defmodule MvWeb.ProfileNavigationTest do
assert html =~ "Not enabled"
end
test "profile navigation works across different authentication methods", %{conn: conn} do
test "profile navigation works across different authentication methods", %{
conn: conn,
actor: actor
} do
# Create password user
password_user =
create_test_user(%{
@ -119,7 +127,7 @@ defmodule MvWeb.ProfileNavigationTest do
user_info: user_info,
oauth_tokens: oauth_tokens
})
|> Ash.create!(domain: Mv.Accounts)
|> Ash.create!(domain: Mv.Accounts, actor: actor)
# Test with password user
conn_password = conn_with_password_user(conn, password_user)