public async Task ResetPasswordAsync_WhenUserNotFound_ShouldBeOkResult() { // Arrange TestMock.UserService.Setup(userManager => userManager.FindByIdAsync(It.IsAny <string>())).Verifiable(); TestMock.UserService.Setup(userManager => userManager.ResetPasswordAsync(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <string>())) .ReturnsAsync( IdentityResult.Failed( new IdentityError { Code = "code", Description = "description" })) .Verifiable(); var controller = new PasswordController(TestMock.UserService.Object, TestMock.ServiceBusPublisher.Object); // Act var result = await controller.ResetPasswordAsync( new ResetPasswordRequest { UserId = new UserId(), Password = "******", Code = "Code" }); // Assert result.Should().BeOfType <OkResult>(); TestMock.UserService.Verify(userManager => userManager.FindByIdAsync(It.IsAny <string>()), Times.Once); TestMock.UserService.Verify(userManager => userManager.ResetPasswordAsync(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <string>()), Times.Never); }
public async Task ResetPasswordAsync_ShouldBeOkResult() { // Arrange var user = new User { Id = new UserId() }; TestMock.UserService.Setup(userManager => userManager.FindByIdAsync(It.IsAny <string>())).ReturnsAsync(user).Verifiable(); TestMock.UserService.Setup(userManager => userManager.ResetPasswordAsync(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <string>())) .ReturnsAsync(IdentityResult.Success) .Verifiable(); var controller = new PasswordController(TestMock.UserService.Object, TestMock.ServiceBusPublisher.Object); // Act var result = await controller.ResetPasswordAsync( new ResetPasswordRequest { UserId = new UserId(), Password = "******", Code = "Code" }); // Assert result.Should().BeOfType <OkResult>(); TestMock.UserService.Verify(userManager => userManager.FindByIdAsync(It.IsAny <string>()), Times.Once); TestMock.UserService.Verify(userManager => userManager.ResetPasswordAsync(It.IsAny <User>(), It.IsAny <string>(), It.IsAny <string>()), Times.Once); }