我无法理解我正在阅读的书中的一大段代码。
这是代码:
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].join('; ' )
product.price = 0
assert product.invalid?
assert_equal "must be greater than or equal to 0.01", product.errors[:price].join('; ' )
product.price = 1
assert product.valid?
end
形成我得到的红宝石文档:
assert_equal (exp, act, msg = nil)
如果可能,除非 exp == act 打印两者之间的差异,否则失败。
我是否正确地假设该行:
assert_equal "必须大于等于 0.01" ,
方法:
assert_equal ("must be greater than or equal to 0.01", , ) #with no act or msg.
另外,有人可以解释下一行使用什么数组以及做什么用的吗?
product.errors[:price].join(';')
我无法掌握数组在哪里以及作者通过加入实现了什么。
提前感谢您提供任何信息。
这本书是:Agile Web Development with Rails 4th Edition