public void UpdateNews_WithNonExisitngNewsNews_ReturnsBadRequest() { // Arange var mockRepository = new Mock<INewsData>(); News[] news = { new News { Id = 100, Title = "News number 1", Content = "Content of first news", PublishDate = DateTime.Now } }; mockRepository.Setup(rep => rep.News.Update(It.IsAny<News>())).Verifiable(); mockRepository.Setup(rep => rep.News.Find(It.IsAny<int>())).Returns(news.First()); var modifiedNewsItem = new News { Id = 1000, Title = "Modified title", Content = "Content of first news", PublishDate = DateTime.Now }; var controller = new NewsController(mockRepository.Object); // Act IHttpActionResult result = controller.Put(modifiedNewsItem); // Assert Assert.IsInstanceOfType(result, typeof(BadRequestResult)); }
public void UpdateNews_WithValidNews_ReturnsOKAndModifiedNews() { // Arange var mockRepository = new Mock<INewsData>(); News[] news = { new News { Id = 100, Title = "News number 1", Content = "Content of first news", PublishDate = DateTime.Now } }; mockRepository.Setup(rep => rep.News.Update(It.IsAny<News>())).Verifiable(); mockRepository.Setup(rep => rep.News.Find(It.IsAny<int>())).Returns(news.First()); var modifiedNewsItem = new News { Id = 100, Title = "Modified title", Content = "Content of first news", PublishDate = DateTime.Now }; var controller = new NewsController(mockRepository.Object); // Act IHttpActionResult result = controller.Put(modifiedNewsItem); var updatedResult = result as NegotiatedContentResult<News>; // Assert Assert.IsNotNull(updatedResult); Assert.AreEqual("Modified title", updatedResult.Content.Title); Assert.IsInstanceOfType(result, typeof(NegotiatedContentResult<News>)); Assert.IsNotNull(updatedResult.Content); }
public void UpdateNews_WithInvalidNews_ReturnsBadRequest() { // Arange var mockRepository = new Mock<INewsData>(); var controller = new NewsController(mockRepository.Object); // Act IHttpActionResult result = controller.Put(new News()); // Assert Assert.IsInstanceOfType(result, typeof(BadRequestResult)); }