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"); }
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); }