Автофиксирование: PropertyData и гетерогенные параметры

Учитывая следующий тест:

[Theory]
[PropertyData("GetValidInputForDb")]
public void GivenValidInputShouldOutputCorrectResult(
    string patientId
    , string patientFirstName
)
{
    var fixture = new Fixture();          

    var sut = fixture.Create<HtmlOutputBuilder>();

    sut.DoSomething();
    // More code
}

Я хочу инкапсулировать создание осветителей в своем собственном классе, что-то похожее на:

[Theory]
[CustomPropertyData("GetValidInputForDb")]
public void GivenValidInputShouldOutputCorrectResult(
    string patientId
    , string patientFirstName
    , HtmlOutputBuilder sut
)
{
    sut.DoSomething();
    // More code
}

Проблема в том, что я используюPropertyData и последний предоставляет два входных параметра. Тот факт, что я пытаюсь автоматически создать свой прибор в качестве параметра, вызывает исключение.

Вот CustomPropertyData:

public class CustomPropertyDataAttribute : CompositeDataAttribute
{
    public CustomPropertyDataAttribute(string validInput)
        :base(new DataAttribute[]
            {
                new PropertyDataAttribute(validInput),
                new AutoDataAttribute(new Fixture()
                    .Customize(new HtmlOutpuBuilderTestConvention() )), 
            })
    {

    }
}

Какие варианты решения этой проблемы?

Ответы на вопрос(1)

Ваш ответ на вопрос