public async Task CallGetHeroForEveryGuideFound() { var dotaHelperData = new Mock <IDotaHelperData>(); var guides = new Mock <IGuideData>(); guides.Setup(x => x.CountAsync()).Returns(Task.FromResult(50)); dotaHelperData.Setup(x => x.Guides).Returns(guides.Object); var heroesProvider = new Mock <IHeroesProvider>(); heroesProvider.Setup(x => x.GetHeroAsync(It.IsAny <string>())).Returns(Task.FromResult(new HeroDto { ImageUrl = "" })); var itemsProvider = new Mock <IItemsProvider>(); var mapper = new Mock <IMapper>(); var guidesList = new List <GuideListDto> { new GuideListDto { HeroId = "1", ItemIds = new List <string>() }, new GuideListDto { HeroId = "2", ItemIds = new List <string>() }, new GuideListDto { HeroId = "3", ItemIds = new List <string>() } }; mapper.Setup(x => x.Map <IEnumerable <GuideListDto> >(It.IsAny <object>())).Returns(guidesList); var guideService = new GuidesService(dotaHelperData.Object, heroesProvider.Object, itemsProvider.Object, mapper.Object); await guideService.GetGuidesAsync(); heroesProvider.Verify(x => x.GetHeroAsync("1"), Times.Once); heroesProvider.Verify(x => x.GetHeroAsync("2"), Times.Once); heroesProvider.Verify(x => x.GetHeroAsync("3"), Times.Once); }
public async Task CorrectlySkipAndTakeWhenPageIsNegativeOr0(int page) { var dotaHelperData = new Mock <IDotaHelperData>(); var guides = new Mock <IGuideData>(); guides.Setup(x => x.CountAsync()).Returns(Task.FromResult(50)); dotaHelperData.Setup(x => x.Guides).Returns(guides.Object); var heroesProvider = new Mock <IHeroesProvider>(); var itemsProvider = new Mock <IItemsProvider>(); var mapper = new Mock <IMapper>(); var guideService = new GuidesService(dotaHelperData.Object, heroesProvider.Object, itemsProvider.Object, mapper.Object); await guideService.GetGuidesAsync(page); var skip = 0; var take = 5; guides.Verify(x => x.GetPagedGuidesAsync(skip, take)); }