public void Get_User_Post_By_Page_Test() { var data = GetFakeUserPosts(20); var service = GetService(data); var dtos = data .AsQueryable() .Select(UserPostDto.Selector(7)) .Reverse() .ToList(); var controller = new UserPostController(service); var res = controller.GetByPage(_userId, 1) as OkObjectResult; Assert.NotNull(res); var dataRes = res.Value as List <UserPostDto>; Assert.AreEqual(dtos.Count, dataRes.Count); for (int i = 0; i < dataRes.Count; i++) { Assert.AreEqual(dataRes.ElementAt(i).Id, dataRes.ElementAt(i).Id); Assert.AreEqual(dataRes.ElementAt(i).Content, dataRes.ElementAt(i).Content); Assert.AreEqual(dataRes.ElementAt(i).ImagePath, dataRes.ElementAt(i).ImagePath); Assert.AreEqual(dataRes.ElementAt(i).IsPostLikedByUser, dataRes.ElementAt(i) .IsPostLikedByUser); Assert.AreEqual(dataRes.ElementAt(i).LikesCount, dataRes.ElementAt(i).LikesCount); Assert.AreEqual(dataRes.ElementAt(i).CommentsCount, dataRes.ElementAt(i) .CommentsCount); } }
public IEnumerable <UserPostDto> GetByPage(int userId, int page) { var posts = _repository.UserPost.GetByPage(userId, page, UserPostDto .Selector(userId)); return(posts); }