我正在使用rails 3(rails (3.2.13)
)应用程序,我正在使用factory_girl_rails (4.5.0)
和rspec (2.13.0)
。factory_girl瞬态属性的未定义方法
我有一个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
)
}
事情正在运行测试,还当我不断收到NoMethodError: undefined method 'jobs_count' for #<FactoryGirl::SyntaxRunner:0x000000079e5f00>
试图在轨道控制台中创建工厂。我对factory_girl
第一and have found this post更低的版本。所以,我试图改变关键字ignore
这并没有帮助,所以我试图升级工厂女孩也没有帮助。
当我省略jobs_count参数从FactoryGirl.create(:delivery_with_jobs)
我也得到了同样的错误。
我做错了什么?你对这个问题的原因有什么建议吗?
在此先感谢。
的[用于FactoryGirl瞬态变量未定义方法]可能重复(http://stackoverflow.com/questions/25510268/undefined-methods-for- factorygirl-transient-variables) –
我在我的问题中引用了该帖子。这不是我的问题的解决方案,我也在我的问题中提到过。问题是,在“=” S在短暂的变量定义 – raethlo