Перемешивание в C# Net Core 2.1 Function App с каркасом xUnit - PullRequest
0 голосов
/ 15 февраля 2020

Я пытаюсь написать модульные тесты в C#. Net Core 2.1 Function App с фреймворком xUnit для чего-то подобного, где переменные класса инициализируются через Autofa c внедрение зависимостей.

public class TestClass
{
    private readonly ISampleLogger<SampleReporting> sampleLogger;
    private readonly IRequestSender requestSender;

    public SampleReporting(IDependencyResolver dependencyResolver)
    {
        dependencyResolver?.Resolve<ISampleLoggingStartup>().Configure();
        this.sampleLogger = dependencyResolver.Resolve<ISampleLogger<SampleReporting>>();
        this.requestSender = dependencyResolver.Resolve<IRequestSender>();
    }
...

public void FunctionToTest(string s)
{
    ...

Я пытаюсь смоделировать объект dependencyresolver, но не могу понять, как смоделировать переменные sampleLogger и requestSender, когда они устанавливаются внутри конструктора. Будут оценены любые лиды.

Я пытался издеваться над IDependencyResolver, но не смог заставить его работать:

private readonly Mock<IDependencyResolver> dependencyResolverMock;

[Fact]
public void Test1()
{
    dependencyResolverMock.Setup(x => x.Resolve<It.IsAny<ISampleLoggingStartup>>().Configure());
...