require "test_helper" class TransactionsControllerTest < ActionDispatch::IntegrationTest setup do sign_in @user = users(:family_admin) @transaction = transactions(:checking_one) end test "should get index" do get transactions_url assert_response :success end test "should get new" do get new_transaction_url assert_response :success end test "should create transaction" do name = "transaction_name" assert_difference("Transaction.count") do post transactions_url, params: { transaction: { account_id: @transaction.account_id, amount: @transaction.amount, currency: @transaction.currency, date: @transaction.date, name: } } end assert_redirected_to transaction_url(Transaction.find_by(name:)) end test "should show transaction" do get transaction_url(@transaction) assert_response :success end test "should get edit" do get edit_transaction_url(@transaction) assert_response :success end test "should update transaction" do patch transaction_url(@transaction), params: { transaction: { account_id: @transaction.account_id, amount: @transaction.amount, currency: @transaction.currency, date: @transaction.date, name: @transaction.name } } assert_redirected_to transaction_url(@transaction) end test "should destroy transaction" do assert_difference("Transaction.count", -1) do delete transaction_url(@transaction) end assert_redirected_to transactions_url end end