【发布时间】:2016-11-01 15:47:59
【问题描述】:
我有一个 ActiveRecord 类,它根据另一个表的内容动态添加范围。
(简化代码示例)
class Thing < ActiveRecord::Base
Feature.all.each do |feature|
scope feature.name, ->{joins(:feature).where("feature.name = #{feature.name})}
end
end
应用 UI 的另一部分是“事物显示”,可让您搜索并将这些功能范围作为搜索的一部分应用。
这一切在正在运行的应用程序中运行良好。
然而,在测试中,似乎成功取决于加载内容的顺序。有时Thing 具有预期的范围,有时则没有。我想我可以通过在任何测试运行之前调用Feature.count 来强制Feature 类和固定装置首先加载,但这不起作用。
有没有办法强制加载类/夹具来解决这个问题?
【问题讨论】:
标签: ruby-on-rails testing fixtures