Extract trigger_hook/3-4 test helper

This commit is contained in:
Claudio Ortolina
2025-02-25 14:03:08 +00:00
parent e441a2455a
commit 25567eeb26
2 changed files with 12 additions and 15 deletions
@@ -337,20 +337,12 @@ defmodule MusicLibraryWeb.CollectionLive.IndexTest do
|> assert_has("button#camera-button")
session
|> unwrap(fn view ->
view
|> element("#barcode-scanner")
|> render_hook("camera_denied")
end)
|> trigger_hook("#barcode-scanner", "camera_denied")
|> assert_has("button#camera-button")
|> refute_has("video#camera-preview")
session
|> unwrap(fn view ->
view
|> element("#barcode-scanner")
|> render_hook("camera_allowed")
end)
|> trigger_hook("#barcode-scanner", "camera_allowed")
|> refute_has("button#camera-button")
|> assert_has("video#camera-preview")
end
@@ -390,11 +382,7 @@ defmodule MusicLibraryWeb.CollectionLive.IndexTest do
conn
|> visit(~p"/collection/scan")
|> unwrap(fn view ->
view
|> element("#barcode-scanner")
|> render_hook("barcode_scanned", %{"number" => barcode})
end)
|> trigger_hook("#barcode-scanner", "barcode_scanned", %{"number" => barcode})
|> assert_has("h2", text: "Marbles")
|> click_button("Import releases")
+9
View File
@@ -4,4 +4,13 @@ defmodule MusicLibraryWeb.LiveTestHelpers do
|> Phoenix.HTML.html_escape()
|> Phoenix.HTML.safe_to_string()
end
def trigger_hook(session, selector, hook, params \\ %{}) do
session
|> PhoenixTest.unwrap(fn view ->
view
|> Phoenix.LiveViewTest.element(selector)
|> Phoenix.LiveViewTest.render_hook(hook, params)
end)
end
end