我对所有这些 rails/rspec 等都是新手,所以我试图遵循我在项目中发现的一些测试,我正在工作并且有意义,它们是由脚手架生成的,但应用程序非常不同,没有测试已更新,因此我重新进行了每个测试。
问题是当我尝试验证无效电子邮件是否应该使用户无效时,它失败了。我知道这没关系,因为我已经完成了测试并且它们通过了没有问题。
我可能以错误的方式看待这个,但是......
用户规格
describe "when email format is invalid" do
it "should be invalid" do
addresses = %w[user@foo,com user_at_foo.org example.user@foo.
foo@bar_baz.com foo@bar+baz.com]
addresses.each do |invalid_address|
@user.email = invalid_address
@user.should_not be_valid
end
end
end
用户测试
test "fail save new user with an corrupt email" do
user = User.new
user.name = 'Someone Name'
user.password = '12345678'
user.email = 'Someone Name@gmail..com'
assert !user.save , "User was saved with an corrupt email"
end
验证由设计完成,失败消息是“预期有效?返回假,得到真”
- - 编辑 - -
我的用户设置
...
describe User do
before :each do
@user = User.new(name: "Name of Names", email:"someone1@somewhere.com",password: "foobarfoobar", password_confirmation: "foobarfoobar" )
end
...