예제 #1
0
        public void MVC_ComponentTests_DeleteComponent()
        {
            Mock <IUserRepository>      usrRepMock = new Mock <IUserRepository>();
            Mock <ICourseRepository>    corRepMock = new Mock <ICourseRepository>();
            Mock <IScoreRepository>     scrRepMock = new Mock <IScoreRepository>();
            Mock <IComponentRepository> comRepMock = new Mock <IComponentRepository>();

            usrRepMock.Setup(c => c.GetById(1)).Returns(lecturer);
            corRepMock.Setup(c => c.GetById(1)).Returns(course);
            comRepMock.Setup(c => c.GetById(1)).Returns(component);

            var controller = new LecturerController(corRepMock.Object, scrRepMock.Object, usrRepMock.Object, comRepMock.Object);

            var controllerContext = new Mock <ControllerContext>();

            controllerContext.SetupGet(p => p.HttpContext.Session["userId"]).Returns(1);
            controllerContext.SetupGet(p => p.HttpContext.Session["email"]).Returns("*****@*****.**");

            controller.ControllerContext = controllerContext.Object;
            var result    = controller.DeleteComponent(1, false) as ViewResult;
            var viewModel = (ComponentViewModel)result.ViewData.Model;

            Assert.AreEqual(1, viewModel.Id);
        }