すべてのモデルに対して、デフォルトでデルタ インデックス作成をオンにしています。
ThinkingSphinx::Index.define :book, :with => :active_record, :delta => (::Padrino.env == :production ? ThinkingSphinx::Deltas::SidekiqDelta : true) do
Rspec の実行時にデルタ インデックス作成をオフにしたい (テストの実行に時間がかかり、delta.spl ファイルにアクセスできないというエラーも表示されるためFATAL: failed to open db/sphinx/test/book_delta.spl: No such file or directory, will not index. Try --rotate option.
)
spec/support/sphinx.rb
TSドキュメントにあるように、ファイルでfalseに設定しようとしました:
config.before(:suite) do
ThinkingSphinx::Test.init, suppress_delta_output: false
ThinkingSphinx.deltas_enabled = false # try to turn delta indexing off for the Controller and Model tests
end
ただし、Factory Girl ファクトリで挿入されたデータであっても、新しいデータを挿入するすべてのテストでデルタ インデックスが実行されます。
次の行ThinkingSphinx.deltas_enabled = false
をスペックに入れると、メソッドが見つからないというエラーが発生します: : undefined method
deltas_enabled=' for ThinkingSphinx:Module`
どうすればオフにできますか?