Моя цель - создать фабрику с несколькими полями с одинаковым значением, например, я хочу, чтобы имя и полное имя были равны.
FactoryBot.define do
factory :brand do
n = Faker::Company.name
name { n }
full_name { n }
end
end
Приведенный выше подход не работает, потому что n получить значение только один раз.
Итак, как оценить некоторый блок, чтобы поделиться его данными с несколькими динамическими полями?
Другой случай: у меня есть YML-файл с брендами,и метод get_random_brand , который возвращает хэш с полями брендов:
FactoryBot.define do
factory :brand do
b = get_random_brand
name { b['name'] }
full_name { b['full_nam'] }
end
end
Я понимаю, что factory do при чтении определения фабрики.
Howоценивать get_random_brand только по одному на каждую созданную фабрику?