Strategia budowania FactoryGirl z asocjacją has_many

Biorąc pod uwagę standardowy związek has_many między dwoma obiektami. Dla prostego przykładu przejdźmy do:

class Order < ActiveRecord::Base
  has_many :line_items
end

class LineItem < ActiveRecord::Base
  belongs_to :order
end

To, co chciałbym zrobić, to wygenerować zlecenie typu stubbed z listą elementów zamówienia typu stubbed.

FactoryGirl.define do
  factory :line_item do
    name 'An Item'
    quantity 1
  end
end

FactoryGirl.define do
  factory :order do
    ignore do
      line_items_count 1
    end

    after(:stub) do |order, evaluator|
      order.line_items = build_stubbed_list(:line_item, evaluator.line_items_count, :order => order)
    end
  end
end

Powyższy kod nie działa, ponieważ Railsy chcą wywołać zapisywanie w kolejności, gdy przypisane są elementy line_item, a FactoryGirl zgłosi wyjątek:RuntimeError: stubbed models are not allowed to access the database

Jak więc (lub czy jest to możliwe) wygenerować obiekt stubbed, w którym kolekcja has_may jest również zaśmiecona?

questionAnswers(1)

yourAnswerToTheQuestion