public void ThrowArgumentNullException_WhenQuizModelIsNull() { // Arange var quizServiceMock = new Mock <IQuizService>(); Quiz quizMock = null; var username = "******"; var httpContext = new Mock <HttpContextBase>(); var mockIdentity = new Mock <IIdentity>(); mockIdentity.Setup(x => x.Name).Returns(username); httpContext.SetupGet(x => x.User.Identity).Returns(mockIdentity.Object); quizServiceMock .Setup(m => m.GetTest(It.IsAny <int>(), It.IsAny <string>())) .Returns(quizMock); var controller = new TestQuizController(quizServiceMock.Object); controller.ControllerContext = new ControllerContext(httpContext.Object, new RouteData(), controller); // Act && Assert Assert .ThrowsException <ArgumentNullException>(() => controller.StartTest(It.IsAny <int>())); }
public void ReturnDefaultViewWithCorrectModel() { // Arange var quizServiceMock = new Mock <IQuizService>(); var quizMock = new Quiz(); var username = "******"; var httpContext = new Mock <HttpContextBase>(); var mockIdentity = new Mock <IIdentity>(); mockIdentity.Setup(x => x.Name).Returns(username); httpContext.SetupGet(x => x.User.Identity).Returns(mockIdentity.Object); quizServiceMock .Setup(m => m.GetTest(It.IsAny <int>(), It.IsAny <string>())) .Returns(quizMock); var controller = new TestQuizController(quizServiceMock.Object); controller.ControllerContext = new ControllerContext(httpContext.Object, new RouteData(), controller); // Act && Assert controller .WithCallTo(c => c.StartTest(It.IsAny <int>())) .ShouldRenderDefaultView() .WithModel(quizMock); }