mirror of
https://github.com/maybe-finance/maybe.git
synced 2025-07-19 05:09:38 +02:00
46 lines
1 KiB
Ruby
46 lines
1 KiB
Ruby
require "test_helper"
|
|
|
|
class ChatsControllerTest < ActionDispatch::IntegrationTest
|
|
setup do
|
|
@user = users(:family_admin)
|
|
@family = families(:dylan_family)
|
|
sign_in @user
|
|
end
|
|
|
|
test "gets index" do
|
|
get chats_url
|
|
assert_response :success
|
|
end
|
|
|
|
test "creates chat" do
|
|
assert_difference("Chat.count") do
|
|
post chats_url, params: { chat: { content: "Hello", ai_model: "gpt-4.1" } }
|
|
end
|
|
|
|
assert_redirected_to chat_path(Chat.order(created_at: :desc).first, thinking: true)
|
|
end
|
|
|
|
test "shows chat" do
|
|
get chat_url(chats(:one))
|
|
assert_response :success
|
|
end
|
|
|
|
test "destroys chat" do
|
|
assert_difference("Chat.count", -1) do
|
|
delete chat_url(chats(:one))
|
|
end
|
|
|
|
assert_redirected_to chats_url
|
|
end
|
|
|
|
test "should not allow access to other user's chats" do
|
|
other_user = users(:family_member)
|
|
other_chat = Chat.create!(user: other_user, title: "Other User's Chat")
|
|
|
|
get chat_url(other_chat)
|
|
assert_response :not_found
|
|
|
|
delete chat_url(other_chat)
|
|
assert_response :not_found
|
|
end
|
|
end
|