在Devise的配置中,我的密码最小长度为8。
# config/initializers/devise.rb
config.password_length = 8..128
但是,当密码为4个字符时,我的rspec 测试通过了:
u = User.new({
password: "test",
# ....
})
expect(u).to be_valid
答案 0 :(得分:0)
如果您不想使用shoulda
,可以尝试这样做吗?
describe User do
it "should validate the length of password" do
FactoryGirl.build(:user, password: "aaaaa").should_not be_valid
end
end
或者如果您想使用shoulda
it { should ensure_length_of(:password).is_at_least(8) }
,如果要检查最大长度,
it { should ensure_length_of(:password).is_at_most(18) }