public void All_ShouldReturnView()
        {
            // Arrange
            Mock <ITelescopeService> telescopeService = new Mock <ITelescopeService>();
            ListTelescopesViewModel  listModel        = this.GetListTelescopesViewModel();

            telescopeService
            .Setup(t => t.Total())
            .Returns(20);

            telescopeService
            .Setup(t => t.All(It.IsAny <int>(), It.IsAny <int>()))
            .Returns(this.GetListTelescopesServiceModel());

            TelescopesController telescopesController = new TelescopesController(telescopeService.Object);

            // Act
            IActionResult result = telescopesController.All(2);

            // Assert
            Assert.IsType <ViewResult>(result);
            object model = (result as ViewResult).Model;

            Assert.IsType <ListTelescopesViewModel>(model);
            ListTelescopesViewModel returnModel = model as ListTelescopesViewModel;

            this.AssertPages(listModel, returnModel);
            this.AssertTelescopeCollection(listModel.Telescopes, returnModel.Telescopes);
        }
        public IActionResult All(int page)
        {
            if (page <= 0)
            {
                page = 1;
            }

            int totalTelescopes = this.telescopeService.Total();

            ListTelescopesViewModel model = new ListTelescopesViewModel
            {
                CurrentPage    = page,
                TotalEntries   = totalTelescopes,
                EntriesPerPage = TelescopesPerPage,
                Telescopes     = this.telescopeService.All(page, TelescopesPerPage)
            };

            return(View(model));
        }