2014-09-22 2 views
0

Здравствуйте, я обновляю свой файл для тестирования под applicationname/test/models/product_test.rbрубин на тест граблей: модели синтаксической ошибки

с этими испытаниями

require 'test_helper' 

class ProductTest < ActiveSupport::TestCase 
test "product attributes must not be empty" do 
    product = Product.new 
    assert product.invalid? 
    assert product.errors[:title].any? 
    assert product.errors[:description].any? 
    assert product.errors[:price].any? 
    assert product.errors[:image_url].any? 
    end 

test "product price must be positive" do 
    product = Product.new(title: "My Book Title", description: "yyy", image_url: "zzz.jpg") 

    product.price = -1 
    assert product.invalid? 
    assert_equal["must be greater than or equal to 0.01"], 
    product.errors[:price] 

    product.price = 0 
    assert product.invalid? 
    assert_equal["must be greater than or equal to 0.01"], 
    product.errors[:price] 

    product.price = 1 
    assert product.valid? 

end 

end 

но когда я rake test:models

Я получаю эту ошибку :

SyntaxError: C:/work/applicationname/test/models/product_test.rb:19: syntax error, unexpected '\n' expexting : "=" 
SyntaxError: C:/work/applicationname/test/models/product_test.rb:24: syntax error, unexpected '\n' expexting : "=" 

ответ

0

Вместо:

assert_equal["must be greater than or equal to 0.01"], 
product.errors[:price] 

Вы должны иметь:

assert_equal ["must be greater than or equal to 0.01"], product.errors[:price] 

Он дважды появляется в коде, так что не забудьте зафиксировать оба выступления.

Смежные вопросы