示例#1
0
        public void Can_Paginate()
        {
            Mock <IMobileRepository> mock = new Mock <IMobileRepository>();

            mock.Setup(m => m.Mobiles).Returns(new List <Mobile>
            {
                new Mobile {
                    MobileId = 1, Name = "Mobile1"
                },
                new Mobile {
                    MobileId = 2, Name = "Mobile2"
                },
                new Mobile {
                    MobileId = 3, Name = "Mobile3"
                },
                new Mobile {
                    MobileId = 4, Name = "Mobile4"
                },
                new Mobile {
                    MobileId = 5, Name = "Mobile5"
                }
            });
            MobileController controller = new MobileController(mock.Object);

            controller.pageSize = 3;

            MobilesListViewModel result = (MobilesListViewModel)controller.List(null, 2).Model;

            List <Mobile> mobiles = result.Mobiles.ToList();

            Assert.IsTrue(mobiles.Count == 2);
            Assert.AreEqual(mobiles[0].Name, "Mobile4");
            Assert.AreEqual(mobiles[1].Name, "Mobile5");
        }
示例#2
0
        public void Can_Send_Pagination_View_Model()
        {
            Mock <IMobileRepository> mock = new Mock <IMobileRepository>();

            mock.Setup(m => m.Mobiles).Returns(new List <Mobile>
            {
                new Mobile {
                    MobileId = 1, Name = "Mobile1"
                },
                new Mobile {
                    MobileId = 2, Name = "Mobile2"
                },
                new Mobile {
                    MobileId = 3, Name = "Mobile3"
                },
                new Mobile {
                    MobileId = 4, Name = "Mobile4"
                },
                new Mobile {
                    MobileId = 5, Name = "Mobile5"
                }
            });
            MobileController controller = new MobileController(mock.Object);

            controller.pageSize = 3;

            // Act
            MobilesListViewModel result
                = (MobilesListViewModel)controller.List(null, 2).Model;

            // Assert
            PagingInfo pageInfo = result.PagingInfo;

            Assert.AreEqual(pageInfo.CurrentPage, 2);
            Assert.AreEqual(pageInfo.ItemsPerPage, 3);
            Assert.AreEqual(pageInfo.TotalItems, 5);
            Assert.AreEqual(pageInfo.TotalPages, 2);
        }