Browse Source

Iteration B1.

master
Nils Dittberner 9 years ago
parent
commit
0baf33bcca
2 changed files with 15 additions and 2 deletions
  1. +7
    -0
      app/models/product.rb
  2. +8
    -2
      test/controllers/products_controller_test.rb

+ 7
- 0
app/models/product.rb View File

@@ -1,2 +1,9 @@
class Product < ApplicationRecord class Product < ApplicationRecord
validates :title, :description, :image_url, :price, presence: true
validates :price, numericality: {greater_than_or_equal_to: 0.01}
validates :title, uniqueness: true
validates :image_url, allow_blank: true, format: {
with: %r{\.(gif|jpg|png)\Z}i,
message: 'must be URL for GIF, JPG or PNG image.'
}
end end

+ 8
- 2
test/controllers/products_controller_test.rb View File

@@ -3,6 +3,12 @@ require 'test_helper'
class ProductsControllerTest < ActionDispatch::IntegrationTest class ProductsControllerTest < ActionDispatch::IntegrationTest
setup do setup do
@product = products(:one) @product = products(:one)
@update = {
title: 'Lorem Ipsum',
description: 'Wibbles are fun!',
image_url: 'lorem.jpg',
price: 19.95
}
end end


test "should get index" do test "should get index" do
@@ -17,7 +23,7 @@ class ProductsControllerTest < ActionDispatch::IntegrationTest


test "should create product" do test "should create product" do
assert_difference('Product.count') do assert_difference('Product.count') do
post products_url, params: { product: { description: @product.description, image_url: @product.image_url, price: @product.price, title: @product.title } }
post products_url, params: { product: @update }
end end


assert_redirected_to product_url(Product.last) assert_redirected_to product_url(Product.last)
@@ -34,7 +40,7 @@ class ProductsControllerTest < ActionDispatch::IntegrationTest
end end


test "should update product" do test "should update product" do
patch product_url(@product), params: { product: { description: @product.description, image_url: @product.image_url, price: @product.price, title: @product.title } }
patch product_url(@product), params: { product: @update }
assert_redirected_to product_url(@product) assert_redirected_to product_url(@product)
end end




Loading…
Cancel
Save