budget/test/controllers/expenses_controller_test.rb
Andrew Tomaka e1a7f4fbbd
All checks were successful
continuous-integration/drone/push Build is passing
Add some model tests (#9)
Reviewed-on: #9
2023-11-22 21:41:03 -05:00

48 lines
1.3 KiB
Ruby

require "test_helper"
class ExpensesControllerTest < ActionDispatch::IntegrationTest
setup do
@expense = expenses(:monthly_expense)
end
test "should get index" do
get expenses_url
assert_response :success
end
test "should get new" do
get new_expense_url
assert_response :success
end
test "should create expense" do
assert_difference("Expense.count") do
post expenses_url, params: {expense: {credit_card: @expense.credit_card, description: @expense.description, estimated: @expense.estimated, payment: @expense.payment, period: @expense.period}}
end
assert_redirected_to expense_url(Expense.last)
end
test "should show expense" do
get expense_url(@expense)
assert_response :success
end
test "should get edit" do
get edit_expense_url(@expense)
assert_response :success
end
test "should update expense" do
patch expense_url(@expense), params: {expense: {credit_card: @expense.credit_card, description: @expense.description, estimated: @expense.estimated, payment: @expense.payment, period: @expense.period}}
assert_redirected_to expense_url(@expense)
end
test "should destroy expense" do
assert_difference("Expense.count", -1) do
delete expense_url(@expense)
end
assert_redirected_to expenses_url
end
end