Add tests for UserSettingsHTML
Added 2 tests covering the edit.html settings form template: - Settings form rendering with email, password, and passkeys sections - Warning message when user cannot register passkey This improves UserSettingsHTML coverage from 0% to 100%.
This commit is contained in:
parent
a430d09668
commit
f0af777f6e
1 changed files with 47 additions and 0 deletions
47
test/towerops_web/controllers/user_settings_html_test.exs
Normal file
47
test/towerops_web/controllers/user_settings_html_test.exs
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
defmodule ToweropsWeb.UserSettingsHTMLTest do
|
||||
use ToweropsWeb.ConnCase, async: true
|
||||
|
||||
import Phoenix.Template, only: [render_to_string: 4]
|
||||
|
||||
alias Towerops.Accounts.User
|
||||
|
||||
describe "edit.html" do
|
||||
test "renders settings form" do
|
||||
email_changeset = User.email_changeset(%User{email: "user@example.com"}, %{})
|
||||
password_changeset = User.password_changeset(%User{}, %{})
|
||||
|
||||
html =
|
||||
render_to_string(ToweropsWeb.UserSettingsHTML, "edit", "html",
|
||||
flash: %{},
|
||||
current_scope: nil,
|
||||
email_changeset: email_changeset,
|
||||
password_changeset: password_changeset,
|
||||
credentials: [],
|
||||
can_register_passkey: true
|
||||
)
|
||||
|
||||
assert html =~ "Account Settings"
|
||||
assert html =~ "Change Email"
|
||||
assert html =~ "Save Password"
|
||||
assert html =~ "Passkeys"
|
||||
assert html =~ "No passkeys registered"
|
||||
end
|
||||
|
||||
test "renders warning when cannot register passkey" do
|
||||
email_changeset = User.email_changeset(%User{email: "user@example.com"}, %{})
|
||||
password_changeset = User.password_changeset(%User{}, %{})
|
||||
|
||||
html =
|
||||
render_to_string(ToweropsWeb.UserSettingsHTML, "edit", "html",
|
||||
flash: %{},
|
||||
current_scope: nil,
|
||||
email_changeset: email_changeset,
|
||||
password_changeset: password_changeset,
|
||||
credentials: [],
|
||||
can_register_passkey: false
|
||||
)
|
||||
|
||||
assert html =~ "Please confirm your email address before registering a passkey"
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
Add table
Reference in a new issue