require "test_helper" class TransfersControllerTest < ActionDispatch::IntegrationTest setup do sign_in users(:family_admin) end test "should get new" do get new_transfer_url assert_response :success end test "can create transfers" do assert_difference "Transfer.count", 1 do post transfers_url, params: { transfer: { from_account_id: accounts(:depository).id, to_account_id: accounts(:credit_card).id, date: Date.current, amount: 100, name: "Test Transfer" } } assert_enqueued_with job: SyncJob end end test "soft deletes transfer" do assert_difference -> { Transfer.count }, -1 do delete transfer_url(transfers(:one)) end end test "can add notes to transfer" do transfer = transfers(:one) assert_nil transfer.notes patch transfer_url(transfer), params: { transfer: { notes: "Test notes" } } assert_redirected_to transactions_url assert_equal "Transfer updated", flash[:notice] assert_equal "Test notes", transfer.reload.notes end end