私は非常に基本的な管理モデルを持っています:
class Admin < ActiveRecord::Base
has_secure_password
validates_uniqueness_of :email
attr_accessible :email, :password, :password_confirmation
end
マニュアルによると has_secure_password
、validates_confirmation_of :password
. 私が正しければ、 ifとdo notvalidates_confirmation_of
は常にエラーになるはずです- たとえisであっても。:password
:password_confirmation
:password_confirmation
nil
私はRSpecでテストしていますが、このテストは失敗し、有効であることがわかりadmin
ます:
admin = Admin.new
admin.email = 'test@example.info'
admin.password = 'secret'
admin.should be_invalid
これは合格します:
admin = Admin.new
admin.email = 'test@example.info'
admin.password = 'secret'
admin.password_confirmation = ''
admin.should be_invalid
それで、私は一体何を間違っているのですか?