создание фиктивной настройки для IAsyncEnumerable в C # с использованием moq

Я пытаюсь протестировать метод QueryAllScheduledJob. Он содержит вызов GetScheduledJobs, который возвращает коллекцию IAsyncEnumerable. Я создал настройку для GetScheduledJobs. Я получаю исключение типа 'null instance' для GetScheduledJobs. В моей настройке я попытался использовать Task.Result для возврата, он дает ошибку времени компиляции.

класс реализации

public async IAsyncEnumerable<ScheduledJobModel> QueryAllScheduledJob()
    {
        var enumerator = ScheduledJobRepository.GetScheduledJobs().GetAsyncEnumerator();
        while (await enumerator.MoveNextAsync())
            yield return ConvertTypeToModel<ScheduledJobModel, ScheduledJobs>(enumerator.Current);
    }

Тестовый класс

 [Theory]
        [InlineData(5)]
        public async void ShouldHaveScheduledJobRecords(int numberOfScheduledJobs)
        {
            //Arrange 
            var data = ScheduleJobFixtureHelper.GetXNumberofScheduledJobs(numberOfScheduledJobs);
            ScheduledJobRepository.Setup(a => a.GetScheduledJobs()).Returns(data);
            ////Act
            var results = QueueManager.QueryAllScheduledJob();
            //Assert
            Assert.Equal(numberOfScheduledJobs, await results.CountAsync());
        }



  public async IAsyncEnumerable<ScheduledJobs> GetXNumberofScheduledJobs(int totalNumberofScheduledJob)
        {
           IEnumerator<ScheduledJobs> enumerator =  AutoFixture.CreateMany<ScheduledJobs>(totalNumberofScheduledJob).GetEnumerator();
            while (enumerator.MoveNext())
            {
                yield return enumerator.Current;
            }
        }

person maxspan    schedule 10.06.2020    source источник