products_controller_test.rb 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. require 'test_helper'
  2. class ProductsControllerTest < ActionDispatch::IntegrationTest
  3. setup do
  4. @product = products(:one)
  5. end
  6. test "should get index" do
  7. get products_url
  8. assert_response :success
  9. end
  10. test "should get new" do
  11. get new_product_url
  12. assert_response :success
  13. end
  14. test "should create product" do
  15. assert_difference('Product.count') do
  16. post products_url, params: { product: { description: @product.description, image_url: @product.image_url, price: @product.price, title: @product.title } }
  17. end
  18. assert_redirected_to product_url(Product.last)
  19. end
  20. test "should show product" do
  21. get product_url(@product)
  22. assert_response :success
  23. end
  24. test "should get edit" do
  25. get edit_product_url(@product)
  26. assert_response :success
  27. end
  28. test "should update product" do
  29. patch product_url(@product), params: { product: { description: @product.description, image_url: @product.image_url, price: @product.price, title: @product.title } }
  30. assert_redirected_to product_url(@product)
  31. end
  32. test "should destroy product" do
  33. assert_difference('Product.count', -1) do
  34. delete product_url(@product)
  35. end
  36. assert_redirected_to products_url
  37. end
  38. end