【发布时间】:2015-03-27 22:48:49
【问题描述】:
按照 Michael Hartl 的 Rails tutorial,我不确定以下验证测试应该如何工作:
test "name should be present" do
@user.name = " "
assert_not @user.valid?
end
编写此测试时,测试套件应为红色。在 User 类中添加相应部分后:
class User < ActiveRecord::Base
validates :name, presence: true
end
测试变为绿色。我不明白前一部分是如何工作的。测试红色是因为validates 部分还没有实现吗?实现之后,@user.valid? 应该是 False 变成 True,因为 assert_not。因此,测试是绿色的?
【问题讨论】:
标签: ruby-on-rails ruby tdd