Ejemplo n.º 1
0
        public void Can_Paginate()
        {
            Mock <ICourseRepository> mock = new Mock <ICourseRepository>();

            mock.Setup(m => m.Courses).Returns(new Course[] {
                new Course {
                    CourseID = 1, Name = "Test1", Description = "Test1", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 2, Name = "Test2", Description = "Test2", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 3, Name = "Test3", Description = "Test3", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 4, Name = "Test4", Description = "Test4", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 5, Name = "Test5", Description = "Test5", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                }
            });
            CourseController controller = new CourseController(mock.Object);

            controller.PageSize = 3;

            CoursesListViewModel result = (CoursesListViewModel)controller.List(2).Model;

            Course[] courseArray = result.Courses.ToArray();
            Assert.IsTrue(courseArray.Length == 2);
            Assert.AreEqual(courseArray[0].Name, "Test4");
            Assert.AreEqual(courseArray[1].Name, "Test5");
        }
Ejemplo n.º 2
0
        public void Can_Send_Pagination_View_Model()
        {
            Mock <ICourseRepository> mock = new Mock <ICourseRepository>();

            mock.Setup(m => m.Courses).Returns(new Course[] {
                new Course {
                    CourseID = 1, Name = "Test1", Description = "Test1", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 2, Name = "Test2", Description = "Test2", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 3, Name = "Test3", Description = "Test3", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 4, Name = "Test4", Description = "Test4", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                },
                new Course {
                    CourseID = 5, Name = "Test5", Description = "Test5", Section = "3", Credit = "1", Time = "12.00", Day = "Tue"
                }
            });

            CourseController controller = new CourseController(mock.Object);

            controller.PageSize = 3;

            CoursesListViewModel result = (CoursesListViewModel)controller.List(2).Model;

            PagingInfo pageInfo = result.PagingInfo;

            Assert.AreEqual(pageInfo.CurrentPage, 2);
            Assert.AreEqual(pageInfo.ItemsPerPage, 3);
            Assert.AreEqual(pageInfo.TotalItems, 5);
            Assert.AreEqual(pageInfo.TotalPages, 2);
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> All()
        {
            var viewModel = new CoursesListViewModel
            {
                Courses = await this.coursesService.GetAll <CourseViewModel>(),
            };

            return(this.View(viewModel));
        }
Ejemplo n.º 4
0
        public ViewResult List(int page = 1)
        {
            CoursesListViewModel model = new CoursesListViewModel
            {
                Courses = repository.Courses
                          .OrderBy(p => p.CourseID)
                          .Skip((page - 1) * PageSize)
                          .Take(PageSize),
                PagingInfo = new PagingInfo
                {
                    CurrentPage  = page,
                    ItemsPerPage = PageSize,
                    TotalItems   = repository.Courses.Count()
                }
            };

            return(View(model));
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> All(int id = 1)
        {
            if (id <= 0)
            {
                return(this.NotFound());
            }

            var user = await this.userManager.GetUserAsync(this.User);

            var userId = user != null ? user.Id : string.Empty;

            const int ItemsPerPage = 9;
            var       viewModel    = new CoursesListViewModel
            {
                ItemsPerPage = ItemsPerPage,
                PageNumber   = id,
                CoursesCount = this.coursesService.GetCount(),
                Courses      = await this.coursesService.GetAll(userId, id, ItemsPerPage),
            };

            return(this.View(viewModel));
        }
Ejemplo n.º 6
0
 public CoursesList()
 {
     InitializeComponent();
     viewModel      = new CoursesListViewModel(Navigation);
     BindingContext = viewModel;
 }