我正在使用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