public void AllActionShouldReturnCorrectNewsCountWithSetPageSize()
        {
            var controller = new NewsController(this.EmptyOjsData);
            var result = controller.All(2, 15) as ViewResult;
            var model = result.Model as AllNewsViewModel;

            Assert.AreEqual(15, model.AllNews.Count());
        }
        public void AllActionShouldReturnCorrectNewsCountAndFirstPageIfInvalidPage()
        {
            var controller = new NewsController(this.EmptyOjsData);
            var result = controller.All(-2) as ViewResult;
            var model = result.Model as AllNewsViewModel;

            Assert.AreEqual(10, model.AllNews.Count());
            Assert.AreEqual(1, model.CurrentPage);
        }
        public void AllActionShouldReturnCorrectNewsTitles()
        {
            var controller = new NewsController(this.EmptyOjsData);
            var result = controller.All() as ViewResult;
            var model = result.Model as AllNewsViewModel;

            foreach (var news in model.AllNews)
            {
                Assert.AreEqual("News Title ", news.Title.Substring(0, 11));
            }
        }
        public void AllActionShouldReturnCorrectPageSizeIfInvalidNumber()
        {
            var controller = new NewsController(this.EmptyOjsData);
            var result = controller.All(1, -50) as ViewResult;
            var model = result.Model as AllNewsViewModel;

            Assert.AreEqual(10, model.PageSize);
        }
        public void AllActionShouldReturnViewModel()
        {
            var controller = new NewsController(this.EmptyOjsData);
            var result = controller.All() as ViewResult;
            var model = result.Model as AllNewsViewModel;

            Assert.AreEqual(10, model.AllNews.Count());
            Assert.AreEqual(1, model.CurrentPage);
            Assert.AreEqual(10, model.PageSize);
            Assert.AreEqual(4, model.AllPages);
        }
        public void AllActionShouldReturnLastPageIfPassesParameterIsTooBig()
        {
            var controller = new NewsController(this.EmptyOjsData);
            var result = controller.All(100) as ViewResult;
            var model = result.Model as AllNewsViewModel;

            Assert.AreEqual(4, model.CurrentPage);
        }