public async Task ListAsyncTest_Success() { var repo = _provider.GetService <IPetsRepository>(); var dataService = _provider.GetService <IDataService>(); var mapper = _provider.GetService <IPetMapper>(); var dtos = PeopleDtoMock.GetAllValidPeople(); dataService.FetchAsync(Arg.Is(CancellationToken.None)) .Returns(Task.FromResult(dtos)); mapper.Map(Arg.Any <PetDto>()).Returns(new Pet()); foreach (var dto in dtos) { var resp = await repo.ListAsync(dto.Name, CancellationToken.None); foreach (var petDto in dto.Pets) { mapper.Received().Map(petDto); } Assert.NotNull(resp); Assert.Equal(dto.Pets?.Count(), resp.Count()); } }
public async Task ListByGenderAsync_Theory(PersonGender gender) { var repo = _provider.GetService <IPeopleRepository>(); var dataService = _provider.GetService <IDataService>(); var dtos = PeopleDtoMock.GetAllValidPeople(); dataService.FetchAsync(Arg.Is(CancellationToken.None)) .Returns(Task.FromResult(dtos)); var resp = await repo.ListByGenderAsync(gender, CancellationToken.None); Assert.NotNull(resp); Assert.Equal(dtos.Count(d => d.Gender == gender), resp.Count()); }