我正在使用rails 3(rails (3.2.13)
)应用程序,我正在factory_girl_rails (4.5.0)
使用rspec (2.13.0)
。
我有一个delivery
工厂,看起来像这样
FactoryGirl.define do
factory :delivery do
trait :assigned do
delivery_type 1
end
trait :started do
delivery_type 2
end
factory :delivery_with_jobs do
ignore do
jobs_count = 2
duration = 10
end
after(:create) do |delivery, evaluator|
create_list(:job, evaluator.jobs_count, delivery: delivery, client: delivery.client)
end
end
end
end
我尝试在我的规范中实例化
let!(:delivery_with_jobs) {
FactoryGirl.create(
:delivery_with_jobs,
:started,
jobs_count: 3,
user: user,
current_user: user,
account: user.account,
client: client
)
}
问题是我在运行测试时以及尝试在rails控制台中创建工厂时不断获得NoMethodError: undefined method 'jobs_count' for #<FactoryGirl::SyntaxRunner:0x000000079e5f00>
。我的factory_girl
and have found this post的版本较低ignore
。所以我试图将关键字更改为FactoryGirl.create(:delivery_with_jobs)
并没有帮助,所以我尝试升级工厂女孩,这也没有帮助。
当我从GetSizer()
中省略jobs_count参数时,我也会收到同样的错误。
我做错了吗?你对这个问题的原因有什么建议吗?
提前致谢。