У меня есть следующая модель Product
и тест на то же самое.Когда я пытаюсь запустить тест, я получаю ошибку при подтверждении действительного значения, assert product.valid?
, в строке № 22. Не могли бы вы сказать, почему?
Код:
require 'test_helper'
class ProductTest < ActiveSupport::TestCase
test "product must not accept with empty attributes" do
product = Product.new
assert product.invalid?
assert product.errors[:title].any?
assert product.errors[:description].any?
assert product.errors[:price].any?
end
test "product must not acept invalid amount values" do
product = Product.new(:title => "test title",
:description => "test description",
:image_url => "image_url"
)
product.price = -1
assert product.invalid?
product.price = 0
assert product.invalid?
product.price = 1
# Line number 22 below
assert product.valid?
end
end
И
class Product < ActiveRecord::Base
validates :title, :description, :image_url, :presence => true
validates :price, :numericality => {:greater_than_or_equal_to => 0.01}
validates :title, :uniqueness => true
validates :image_url, :format => {
:with => %r{\.(gif|png|jpg)$}i,
:message => 'must be a URL for image'
}
end