public async Task UnlockAccount_GivenRequestIsNotValid_ExpectResponseWithFailedStatus() { var mediator = new Mock <IMediator>(); var currentAuthenticatedUserProvider = new Mock <ICurrentAuthenticatedUserProvider>(); currentAuthenticatedUserProvider.Setup(x => x.CurrentAuthenticatedUser) .Returns(Maybe.From(new Mock <ISystemUser>().Object)); var controller = new UserApiController(mediator.Object, currentAuthenticatedUserProvider.Object); controller.ModelState.AddModelError("key", "error-message"); var result = Assert.IsType <JsonResult>(await controller.UnlockAccount(new UnlockAccountRequest())); var responseModel = Assert.IsType <UnlockAccountResponse>(result.Value); Assert.False(responseModel.IsSuccess); }
public async Task UnlockAccount_GivenFailedExecution_ExpectResponseWithFailedStatus() { var mediator = new Mock <IMediator>(); mediator.Setup(x => x.Send(It.IsAny <UnlockAccountCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(ResultWithError.Fail(new ErrorData(ErrorCodes.AuthenticationFailed))); var currentAuthenticatedUserProvider = new Mock <ICurrentAuthenticatedUserProvider>(); currentAuthenticatedUserProvider.Setup(x => x.CurrentAuthenticatedUser) .Returns(Maybe.From(new Mock <ISystemUser>().Object)); var controller = new UserApiController(mediator.Object, currentAuthenticatedUserProvider.Object); var result = Assert.IsType <JsonResult>(await controller.UnlockAccount(new UnlockAccountRequest())); var responseModel = Assert.IsType <UnlockAccountResponse>(result.Value); Assert.False(responseModel.IsSuccess); }
public async Task UnlockAccount_GivenNoAuthenticatedUser_ExpectFailedResponse() { var mediator = new Mock <IMediator>(); mediator.Setup(x => x.Send(It.IsAny <UnlockAccountCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(ResultWithError.Ok <ErrorData>()); var currentAuthenticatedUserProvider = new Mock <ICurrentAuthenticatedUserProvider>(); currentAuthenticatedUserProvider.Setup(x => x.CurrentAuthenticatedUser) .Returns(Maybe <ISystemUser> .Nothing); var controller = new UserApiController(mediator.Object, currentAuthenticatedUserProvider.Object); var result = Assert.IsType <JsonResult>(await controller.UnlockAccount(new UnlockAccountRequest { UserId = TestVariables.AuthenticatedUserId, })); var responseModel = Assert.IsType <UnlockAccountResponse>(result.Value); Assert.False(responseModel.IsSuccess); }