FactoryGirl и переменные внутри фабрики

Что делать, если я хочу сделать что-то вроде

FactoryGirl.define do
  factory :leaf do
  end

  factory :tree do
    l = []
    leaves do
      l << Factory.build(:leaf)
      //some app logic here
      l
    end
    root l.first
  end
end

Как мне написать это, чтобы это работало?

А может, у кого-нибудь есть ссылка с действительно сложными и нетривиальными примерами использования FactoryGirl?

Спасибо.

1 ответ

Решение

Я не уверен на 100%, что я следовал тому, что вы просите, но сработает ли это?

factory :tree do
    after_build { |tree|  
        # build your leaves here
        # ...

        tree.root l.first
    }
end
Другие вопросы по тегам