Настройка AutoFixture с OmitAutoProperties не работает - PullRequest
0 голосов
/ 10 апреля 2019

Я использую AutoFixture с NUnit, и когда я использую OmitAutoProperties, свойства по-прежнему заполняются автоматически. вот как выглядит моя настройка:

    public class ContractItemCustomization : ICustomization
    {
        public void Customize(IFixture fixture)
        {
            var orderReceivedContractItem = fixture.Build<ContractItem>()
                                    .OmitAutoProperties()
                                    .With(x => x.Status, new ContractStatus
                                    {
                                        ContractLifecycleStatus = ContractLifecycleStatus.ORDER_RECEIVED
                                    });

            fixture.Customizations.Add(orderReceivedContractItem);
        }
    }

Вот как я использую свою настройку:

        [SetUp]
        public void Setup()
        {
            fixture = new Fixture().Customize(
                new CompositeCustomization(
                    new ContractItemCustomization()));


            contractItem = fixture.Create<ContractItem>();
        }

Что мне не хватает?

1 Ответ

0 голосов
/ 10 апреля 2019

Хорошо, после более глубокого изучения документации AutoFixture я нашел решение:

Вместо:

fixture.Customizations.Add(orderReceivedContractItem);

Мне пришлось сделать следующее:

fixture.Register(() => orderReceivedContractItem.Create());

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...