1
0
Fork 0
mirror of https://github.com/maybe-finance/maybe.git synced 2025-07-20 05:39:39 +02:00
Maybe/test/controllers/chats_controller_test.rb
Zach Gollwitzer 90a9546f32
Pre-launch design sync with Figma spec (#2154)
* Add lookbook + viewcomponent, organize design system file

* Build menu component

* Button updates

* More button fixes

* Replace all menus with new ViewComponent

* Checkpoint: fix tests, all buttons and menus converted

* Split into Link and Button components for clarity

* Button cleanup

* Simplify custom confirmation configuration in views

* Finalize button, link component API

* Add toggle field to custom form builder + Component

* Basic tabs component

* Custom tabs, convert all menu / tab instances in app

* Gem updates

* Centralized icon helper

* Update all icon usage to central helper

* Lint fixes

* Centralize all disclosure instances

* Dialog replacements

* Consolidation of all dialog styles

* Test fixes

* Fix app layout issues, move to component with slots

* Layout simplification

* Flakey test fix

* Fix dashboard mobile issues

* Finalize homepage

* Lint fixes

* Fix shadows and borders in dark mode

* Fix tests

* Remove stale class

* Fix filled icon logic

* Move transparent? to public interface
2025-04-30 18:14:22 -04:00

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-4o" } }
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