用户数据验证

来源:互联网 发布:好用的网络机顶盒软件 编辑:程序博客网 时间:2024/06/02 06:08


before { @user = User.new(name: "Example User", email: "user@example.com") }
    #在各测试用例之前执行块中的代码,本例中这个块的作用是为
    # User.new 传入一个合法的初始 Hash 参数,创建 @user 实例变量


    subject { @user } #把 @user 设为这些测试用例默认的测试对象


    it { should respond_to(:name) }
    it { should respond_to(:email) }
    #两个测试用例对 name 和 email 属性的存在性进行了测试


@user.respond_to?(:name)
在 RSpec 中可以写成


it "should respond to 'name'" do
  expect(@user).to respond_to(:name)
end


验证值不能为空:presence
app/models/user.rb中
class User < ActiveRecord::Base
  validates :name, presence: true
end
在测试文件中
it {should be_valid}
    describe "when name is not present" do
      before{@user.name=""}
      it{should_not be_valid}
验证字符串长度length
validates :name, presence: true,length{maximum:12}
0 0
原创粉丝点击