public void Delete() { ExamController controller = new ExamController(); string result = controller.Delete(9); Assert.AreEqual("1", result); }
public void ShouldDeleteCorrectly() { Mock <IGenericService <Exam> > examServiceMock = new Mock <IGenericService <Exam> >(); Exam exam = new Exam() { Id = 100, AttemptOne = DateTime.Now.Date, AttemptTwo = DateTime.Now.Date.AddDays(14), EC = 3, Duration = TimeSpan.FromMinutes(30), Compensatable = true, ExamType = "Vh:essaytoets + vh+att:gedragsassessment + vh:portfolio-assessment + vh:vaardigheidstoets(R)", Language = "NL", ResponsibleTeacher = new Teacher() { FirstName = "Robin", LastName = "Schellius" }, Module = new Module() { Name = "Client-side web frameworks", } }; ClaimsPrincipal identity = new ClaimsPrincipal(new ClaimsIdentity(new Claim[] { new Claim(ClaimTypes.NameIdentifier, "123") })); examServiceMock.Setup(m => m.FindById(It.IsAny <int>(), It.IsAny <string[]>())).Returns(exam); examServiceMock.Setup(m => m.Delete(It.IsAny <Exam>())).Returns((Exam model) => { return(1); }); ExamController controller = new ExamController(examServiceMock.Object) { ControllerContext = new ControllerContext() { HttpContext = new DefaultHttpContext() { User = identity } } }; RedirectToActionResult result = controller.Delete(exam.Id) as RedirectToActionResult; Assert.Equal("Index", result?.ActionName); }