Например ISomething
представляет собой интерфейс с тремя свойствами: string Name
и int Count
и некоторой комплексной собственности ImComplex
(с круговым зависимостей и т.д.), что я не хочу AutoFixture строить. Поэтому мне нужно AutoFixture для создания макета ISomething
с Name
и Count
, настроенных по его алгоритму по умолчанию, и ImComplex
как null. Но если я пытаюсь решить, как это я получаю исключение:AutoFixture + AutoMoq: Создать макет с исключенной собственности
fixture.Customize(new AutoConfiguredMoqCustomization());
var some = fixture.Build<ISomething>().Without(x=>x.ImComplex).Create<ISomething>();
Ploeh.AutoFixture.ObjectCreationException: Украшенные ISpecimenBuilder не удалось создать образец на основе запроса: RP.Core.IInformationUnit. Это может произойти, если запрос представляет собой интерфейс или абстрактный класс ; если это так, зарегистрируйте ISpecimenBuilder, который может создавать образцы на основе запроса. Если это происходит в строго типизированном выражении Build, попробуйте поставить фабрику , используя один из методов IFactoryComposer.
Что мне делать?
Th Анк ты! Сущности Entity Framework имеют свойства навигации, которые вызывают круговые зависимости. Я пытался использовать OmitOnRecursionBehavior, но не имел успеха. – AsValeO