У меня есть следующие фабрики:
Factory.define :producer, :class => User do |f|
f.sequence(:email) { |n| "producer_#{n}@shit.com" }
f.password "foobar"
f.password_confirmation "foobar"
f.role "producer"
end
Factory.define :business do |f|
f.sequence(:name) { |n| "business_#{n}" }
f.association(:producer, :factory => :producer)
end
Factory.define :deal do |d|
d.sequence(:title) { |n| "deal_#{n}" }
d.sequence(:desc) { |n| "deal_desc_#{n}" }
d.cap "50"
d.rate "2"
d.start Date.today - 1 # This is the date where you put in db
d.end Date.today + 7
d.association :business
end
сейчас, когда я делаю следующее:
before(:each) do
@consumer = test_sign_in(Factory(:consumer))
@deal = Factory(:deal)
end
Я получаю ошибку:
Failure/Error: @deal = Factory(:deal)
NoMethodError:
undefined method `producer=' for #<Business:0x007fb494290090>
# ./deals_controller_spec.rb:15:in `block (4 levels) in <top (required)>
(Строка 15 относится к @deal = Factory(:deal)
)
Кто-нибудь знает почему?Я очень плохо знаком с заводской девушкой и не могу найти документацию, объясняющую связь и последовательность очень хорошо.