public void GetAllPinnedNewsByCategory_PinnedNewsIsInCategory_NotEmptyList() { var categoryId1 = Guid.NewGuid().ToString(); var categoryId2 = Guid.NewGuid().ToString(); var categoryId3 = Guid.NewGuid().ToString(); var listObjects = new List <PinNews> { new PinNews() { CategoryId = categoryId1, NewsItemId = Guid.NewGuid().ToString() }, new PinNews() { CategoryId = categoryId2, NewsItemId = Guid.NewGuid().ToString() } }; Mock <IRepository <PinNews> > mock = new Mock <IRepository <PinNews> >(); mock.Setup(m => m.GetMany(pn => pn.CategoryId == categoryId1)) .Returns(listObjects.Where(pn => pn.CategoryId == categoryId1)); mock.Setup(m => m.GetMany(pn => pn.CategoryId == categoryId2)) .Returns(listObjects.Where(pn => pn.CategoryId == categoryId2)); mock.Setup(m => m.GetMany(pn => pn.CategoryId == categoryId3)) .Returns(listObjects.Where(pn => pn.CategoryId == categoryId3)); PinNewsService service = new PinNewsService(mock.Object); var result = service.GetAllPinnedNewsByCategory(categoryId1); Assert.IsTrue(result != null); Assert.IsTrue(result.Any()); Assert.IsTrue(result.Count() == 1); }
private IList <NewsItemViewModel> GetManyNewsItemViewModel(string categoryId, int skip, int take) { var categoryIds = new List <string>(); var pinnedNewsIds = new List <string>(); var childrenCategory = _menuService.GetRecursionAllChildren(categoryId); var pinnedNews = _pinNewsService.GetAllPinnedNewsByCategory(categoryId); categoryIds.Add(categoryId); categoryIds.AddRange(childrenCategory.Select(menuItem => menuItem.Id)); pinnedNewsIds.AddRange(pinnedNews.Select(p => p.NewsItemId)); var filterNewsItemParameters = new FilterNewsItemParameters() { CategoryIds = categoryIds, PinnedNewsIds = pinnedNewsIds, Skip = skip, Take = take }; var newsCollection = _newsService.GetNewsItem(filterNewsItemParameters); return(GetNewsItemsViewModel(newsCollection)); }