思考Sphinx 3.0.1如何在使用Rspec进行测试时关闭增量索引
默认情况下,我已为所有模型启用增量索引:思考Sphinx 3.0.1如何在使用Rspec进行测试时关闭增量索引,rspec,thinking-sphinx,Rspec,Thinking Sphinx,默认情况下,我已为所有模型启用增量索引: ThinkingSphinx::Index.define :book, :with => :active_record, :delta => (::Padrino.env == :production ? ThinkingSphinx::Deltas::SidekiqDelta : true) do 我想在运行Rspec时关闭增量索引(因为运行测试需要更长的时间,而且我还收到一个错误,即无法访问delta.spl文件:FATAL:无法打开d
ThinkingSphinx::Index.define :book, :with => :active_record, :delta => (::Padrino.env == :production ? ThinkingSphinx::Deltas::SidekiqDelta : true) do
我想在运行Rspec时关闭增量索引(因为运行测试需要更长的时间,而且我还收到一个错误,即无法访问delta.spl文件:FATAL:无法打开db/sphinx/test/book\u delta.spl:没有这样的文件或目录,将不会索引。请尝试--rotate选项。
)
我尝试在spec/support/sphinx.rb文件中将其设置为false,正如TS文档中所述:
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
但每次插入新数据的测试仍在进行增量索引,即使是使用工厂女孩工厂插入的数据
将这一行:ThinkingSphinx.deltas_enabled=false
放入我的任何规范会导致缺少方法错误::对于ThinkingSphinx:Module,未定义方法
deltas_enabled=”`
如何关闭它?启用的ThinkingSphinx.deltas_
设置用于思考Sphinx v1/v2
使用Thinking Sphinx v3(我强烈建议更新到最新版本3.0.3),您可以使用以下命令:
ThinkingSphinx::Deltas.suspend!
如果在某个时候你想重新打开它们,会有一个恢复代码>方法。谢谢帕特。有关于3.x的文档我可以查看吗?主页上的文档似乎不完整,我在尝试用Rspec测试Thinking Sphinx时遇到了很多问题。大多数文档都是为TS v3更新的,但恐怕还没有Delta。请随意在这里发布您看到的其他问题,或者到TS列表。我已经找到了关于增量索引的内容。