Я использую factory_boy для создания тестовых устройств. У меня есть две простые фабрики, поддерживаемые моделями SQLAlchemy (упрощенный ниже).
Я хотел бы иметь возможность вызывать AddressFactory.create()
несколько раз и создать его Country
, если он еще не существует, в противном случае я хочу, чтобы он повторно использовал существующую запись.
class CountryFactory(factory.Factory):
FACTORY_FOR = Country
cc = "US"
name = "United States"
class AddressFactory(factory.Factory):
FACTORY_FOR = Address
name = "Joe User"
city = "Seven Mile Beach"
country = factory.SubFactory(CountryFactory, cc="KY", name="Cayman Islands")
Мой вопрос: как я могу настроить эти фабрики, чтобы factory_boy не пытался создавать новую страну каждый раз, когда создает адрес?