Mongoid ドキュメントとオブザーバーのテストを別々に書いています。spec ディレクトリで rspec を実行すると、オブザーバーがまだドキュメント クラスにアタッチされているため、テストが失敗します。
私のオブザーバーの Mongoid 構成コード:
describe 'UserObserver' do
before :all do
Mongoid.load! "#{File.dirname(__FILE__)}/../../mongoid.yml", :test
Mongoid.observers = UserObserver
Mongoid.instantiate_observers
end
...
end
そして、私のドキュメントの Mongoid 設定コード:
describe User do
before :all do
Mongoid.load! "#{File.dirname(__FILE__)}/../../mongoid.yml", :test
end
...
end
ブロックに追加しようとしMongoid.observers.clear
ましたafter:all
が、うまくいきませんでした。私も試してみましたが、うまくいきませMongoid::config.reset
んでした。
では、インスタンス化された後に Mongoid からオブザーバーを削除することは可能ですか?