public void List_All_Items_Should_Work_Correctly() { var mockRepo = new Mock<IRepository<NewsRecord>>(); var news = new List<NewsRecord>() { new NewsRecord() { Title = "HopHop1", Content = "The hoppy hop", PublishDate = DateTime.Now }, new NewsRecord() { Title = "HopHop2", Content = "The hoppy hop2", PublishDate = DateTime.Now.AddDays(+5) }, new NewsRecord() { Title = "HopHop3", Content = "The hoppy hop3", PublishDate = DateTime.Now.AddDays(+10) } }; mockRepo.Setup(r => r.GetAll()).Returns(news.AsQueryable()); var controller = new NewsController(mockRepo.Object); this.SetupController(controller, "NewsController"); var response = controller.GetAll().ExecuteAsync(new CancellationToken()).Result; Assert.AreEqual(HttpStatusCode.OK, response.StatusCode); var content = response.Content.ReadAsStringAsync().Result; var resultNews = JsonConvert.DeserializeObject<List<NewsRecord>>(content); for (int i = 0; i < resultNews.Count; i++) { Assert.AreEqual(news[i].Id, resultNews[i].Id); Assert.AreEqual(news[i].Title, resultNews[i].Title); Assert.AreEqual(news[i].Content, resultNews[i].Content); Assert.AreEqual(news[i].PublishDate, resultNews[i].PublishDate); } }
public void TestListAll() { var controller = new NewsController(repoMock.Object); SetupController(controller, "News"); var news = new[] { new News { Title = "Zaglavie", Content = "dadadada" }, new News { Title = "Asdjoqwe", Content = "asodojk" } }; repoMock.Setup(repo => repo.All()).Returns(news.AsQueryable()); var result = controller.GetAll().ExecuteAsync(new CancellationToken()).Result; Assert.AreEqual(HttpStatusCode.OK, result.StatusCode); var returnedNews = result.Content.ReadAsAsync<List<News>>().Result; Assert.AreEqual(2, returnedNews.Count); CollectionAssert.AreEquivalent(news, returnedNews); }