public void UpdateNews_WithIncorrectData_ShouldReturnBadRequestWithOutUpdatingTheNews()
        {
            // Arrange
            var initialNew = new News() { Id = 1, Title = "Test news #1", Content = "Test content #1", };

            var controller = new NewsController(this.dataLayerMocked);
            this.SetupController(controller, "news");

            // Act
            this.dataLayerMocked.News.Add(initialNew);

            var httpGetResponse = controller.GetAllNews().ExecuteAsync(new CancellationToken()).Result;
            var newsFromService = httpGetResponse.Content.ReadAsAsync<List<News>>().Result;

            var newsId = newsFromService[0].Id;
            var httpPutResponse =
                controller.UpdateNewById(newsId, null).ExecuteAsync(new CancellationToken()).Result;

            Assert.AreEqual(HttpStatusCode.BadRequest, httpPutResponse.StatusCode);
            Assert.AreEqual(initialNew.Title, newsFromService[0].Title);
            Assert.AreEqual(initialNew.Content, newsFromService[0].Content);
        }
        public void UpdateNews_WithCorrectData_ShouldUpdateTheNewsAndReturn200Ok()
        {
            // Arrange
            var initialNew = new News() { Id = 1, Title = "Test news #1", Content = "Test content #1", };

            var controller = new NewsController(this.dataLayerMocked);
            this.SetupController(controller, "news");

            // Act
            this.dataLayerMocked.News.Add(initialNew);

            var httpGetResponse = controller.GetAllNews().ExecuteAsync(new CancellationToken()).Result;
            var newsFromService = httpGetResponse.Content.ReadAsAsync<List<News>>().Result;
            var updatedNew = new UpdateNewInputModel() { Title = "Updated", Content = "Tralala"};
            var newsId = newsFromService[0].Id;
            var httpPutResponse =
                controller.UpdateNewById(newsId, updatedNew).ExecuteAsync(new CancellationToken()).Result;

            var result = httpPutResponse.Content.ReadAsAsync<News>().Result;

            // Assert
            Assert.AreEqual(updatedNew.Title, result.Title);
            Assert.AreEqual(updatedNew.Content, result.Content);
        }