這裏是失敗的測試:爲什麼我的rspec測試不能進行用戶確認?
context "when password does not match confirmation" do
before { build(:user, :password_confirmation => 'mismatch') }
it { should_not be_valid }
end
我使用工廠女孩對這個測試套件build
方法。
我的用戶模型:
class User < ActiveRecord::Base
attr_accessible :email, :name, :password, :password_confirmation
has_secure_password
validates :password_confirmation, presence: true
validates :password, presence: true, length: { minimum: 5 }
end
UPDATE:你不需要標註:使用密碼字段:確認=>使用has_secure_password時如此。這是照顧:看到源代碼:https://github.com/rails/rails/blob/master/activemodel/lib/active_model/secure_password.rb
驗證工作正常 - 當我嘗試在控制檯創建一個新用戶時,我得到正確的錯誤消息。那麼爲什麼測試失敗?錯誤在哪裏?
因此,我應該在哪裏放置':confirmation => true'? –
如指南所述,在驗證任何領域你想驗證的確認。 – sevenseacat
已更新的代碼上面,它仍然不工作 - 測試一直失敗 –