次のようなモデルがあります。
class User
include Mongoid::Document
field :email
validate :email, presence: true, uniqueness: true
end
そして、私は次のようなテストを持っています...
it { User.new.should_not be_valid }
it { FactoryGirl.build(:user).should be_valid }
it { should validate_presence_of :email }
it { should validate_uniqueness_of :email }
これらはどちらも、.valid?
メソッドが呼び出されたときにデータベースにアクセスしたいと考えています。それを抽象化できる方法はありますか?一意性バリデーターは、他の多くの人々によって徹底的にテストされているため、上記の最後の行で十分です。
モデル スペック中に DB を実行する必要がある場合は、それほど大きな問題ではありませんが、できれば避けたいと思います。