/ / Тестування асоціацій з rspec та Factory Girl - рубіни на рейках, асоціації, фабрика-бот

Тестування асоціацій з rspec та Factory Girl - рубіни на рейках, асоціації, фабрика-бот

Моя модель; Домогосподарство має багато людей: сусіди та сусіди належать до: домогосподарства

Кожна побут має мати сусіда:

   validates :neighbors, presence: {message: "You must enter at least one neighbor"]

Я намагаюся створити фабрику

   factory :household, class:  "Household" do
household_name "Brooke"
neighbor
end


factory :neighbor, class: "Neighbor" do
first_name "Tom"
last_name "Brooke"
end

it "has a valid factory"  do
household = create(:household, neighbors: :neighbor)
expect(household).to be_valid
end

Це дає мені:

  undefined method `neighbor=" for #<Household:0x007fd45ec85138>

Як налаштувати Factory Girl для відображення Асоціації?

Відповіді:

1 для відповіді № 1

Я, нарешті, зробив це:

Я взяв сусід з побутової фабрики:

  factory :household, class:  "Household" do
household_name "Brooke"
end

І на мій тест я створив Асоціацію в рамках тесту:

   it "has a valid factory"  do
neighbor = create(:neighbor)
household = create(:household, neighbors: [neighbor])
expect(household).to be_valid
end