Exemplo n.º 1
0
        public void TestAddValidNews()
        {
            var controller = new NewsController(repoMock.Object);

            SetupController(controller, "News");

            var news = new List <News>
            {
                new News {
                    Title = "Zaglavie", Content = "dadadada"
                },
                new News {
                    Title = "Asdjoqwe", Content = "asodojk"
                }
            };

            repoMock.Setup(repo => repo.Add(It.IsAny <News>())).Callback((News n) => news.Add(n));

            var newNews = new NewsBindingModel {
                Title = "Teadsad", Content = "koko6ki"
            };
            var result = controller.AddNews(newNews).ExecuteAsync(new CancellationToken()).Result;

            Assert.AreEqual(HttpStatusCode.Created, result.StatusCode);
            Assert.AreEqual(newNews.Title, news.Last().Title);
            Assert.AreEqual(newNews.Content, news.Last().Content);
            Assert.IsNotNull(news.Last().PublishDate);
        }
Exemplo n.º 2
0
        public void TestAddInvalidNews()
        {
            var controller = new NewsController(repoMock.Object);

            SetupController(controller, "News");

            var invalidNews = new NewsBindingModel {
                Title = "No content"
            };

            // it's not the controller's job to validate - there is a validator
            controller.ModelState.AddModelError("Content", "Required");
            var result = controller.AddNews(invalidNews).ExecuteAsync(new CancellationToken()).Result;

            Assert.AreEqual(HttpStatusCode.BadRequest, result.StatusCode);
        }