我将以下代码放入RSpec测试中:
it { should validate_format_of(:email).not_with('test@test')}
Run Code Online (Sandbox Code Playgroud)
并设置实际的类:
validates :email, :presence => true, :format => /\b[A-Z0-9._%-]+@(?:[A-Z0-9-]+\.)+[A-Z]{2,4}\b/i
Run Code Online (Sandbox Code Playgroud)
当我运行测试时,我得到:
失败:1)用户失败/错误:它{should validate_format_of(:email).not_with('test @ test')}当电子邮件设置为"test @ test"时,预期错误包括"不能为空"错误:["名称不能为空(nil)","电子邮件无效(\"test @ test \")"]#./ spec/model/user_spec.rb:8:in`block(2级)在''
当我做一个通过测试时:
it { should validate_format_of(:email).with('adam@trimediatlantic.com')}
Run Code Online (Sandbox Code Playgroud)
一切都按预期工作.有人可以告诉我,如果我做错了或者这是一个框架问题.谢谢.