public void Can_Paginate() { Mock <IExerciseRepository> mock = new Mock <IExerciseRepository>(); mock.Setup(m => m.Exercises).Returns(new Exercise[] { new Exercise { ExerciseID = 1, Name = "E1" }, new Exercise { ExerciseID = 2, Name = "E2" }, new Exercise { ExerciseID = 3, Name = "E3" }, new Exercise { ExerciseID = 4, Name = "E4" }, new Exercise { ExerciseID = 5, Name = "E5" } }); ExerciseController controller = new ExerciseController(mock.Object); controller.PageSize = 3; ExercisesListViewModel result = (ExercisesListViewModel)controller.List(null, 2).Model; Exercise[] exArray = result.Exercises.ToArray(); Assert.IsTrue(exArray.Length == 2); Assert.AreEqual(exArray[0].Name, "E4"); Assert.AreEqual(exArray[1].Name, "E5"); }
public void Can_Send_Pagination_View_Model() { Mock <IExerciseRepository> mock = new Mock <IExerciseRepository>(); mock.Setup(m => m.Exercises).Returns(new Exercise[] { new Exercise { ExerciseID = 1, Name = "E1" }, new Exercise { ExerciseID = 2, Name = "E2" }, new Exercise { ExerciseID = 3, Name = "E3" }, new Exercise { ExerciseID = 4, Name = "E4" }, new Exercise { ExerciseID = 5, Name = "E5" } }); ExerciseController controller = new ExerciseController(mock.Object); controller.PageSize = 3; ExercisesListViewModel result = (ExercisesListViewModel)controller.List(null, 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); }