25 lines
657 B
Elixir
25 lines
657 B
Elixir
defmodule ElixirAiWeb.ChatLiveTest do
|
|
use ElixirAiWeb.ConnCase, async: false
|
|
import ElixirAi.PubsubTopics, only: [chat_topic: 1]
|
|
|
|
setup do
|
|
stub(ElixirAi.ConversationManager, :open_conversation, fn _name ->
|
|
{:ok, %{messages: [], streaming_response: nil, provider: nil}}
|
|
end)
|
|
|
|
:ok
|
|
end
|
|
|
|
test "displays a db error when a db_error message is broadcast", %{conn: conn} do
|
|
{:ok, view, _html} = live(conn, ~p"/chat/test_conv")
|
|
|
|
Phoenix.PubSub.broadcast(
|
|
ElixirAi.PubSub,
|
|
chat_topic("test_conv"),
|
|
{:db_error, "unique constraint violated"}
|
|
)
|
|
|
|
assert render(view) =~ "unique constraint violated"
|
|
end
|
|
end
|