При настройке настраиваемого атрибута AutoDataAttribute для автоматического моделирования, какой правильный синтаксис указывает AutoFixture игнорировать все рекурсивные структуры?

Попробуйте сделать строку:

datepart("h", TestingStatistics.SigninTime) >= 18;
1
задан Andr 18 January 2019 в 20:42
поделиться

1 ответ

Просто используйте лямбду с телом для дополнительной настройки экземпляра fixture перед его возвратом:

public class AutoMoqDataAttribute : AutoDataAttribute
{
    public AutoMoqDataAttribute() : base(() =>
    {
        var fixture = new Fixture().Customize(new CompositeCustomization(
            new AutoMoqCustomization(),
            new SupportMutableValueTypesCustomization()));

        fixture.Behaviors.OfType<ThrowingRecursionBehavior>().ToList().ForEach(b => Fixture.Behaviors.Remove(b));
        fixture.Behaviors.Add(new OmitOnRecursionBehavior());

        return fixture;
    })
    {
    }
}

Таким образом, активация Fixture будет действительно ленивой, и вы получите ожидаемую оптимизацию производительности; -)

0
ответ дан Alex Povar 18 January 2019 в 20:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: