public async Task <IActionResult> ConfirmEmail([FromBody] ConfirmationRequestDto dto) { try { if (ModelState.IsValid) { var user = await _userManager.FindByIdAsync(dto.UserId); if (user == null) { return(BadRequest()); } var result = await _userManager.ConfirmEmailAsync(user, dto.Code); if (result.Succeeded) { return(Ok()); } } return(BadRequest()); } catch (Exception ex) { _logger.LogError("Threw exception while confirming email for user: {@ex}", ex); return(new StatusCodeResult(500)); } }
public async Task ConfirmEmail_WhenCalledWithInvalidUserId_ReturnsBadRequest() { // Arrange var req = new ConfirmationRequestDto(); _mockUserManager .Setup(m => m.FindByIdAsync(It.IsAny <string>())) .ReturnsAsync(null as ApplicationUser); // Act var result = await _sut.ConfirmEmail(req); // Assert Assert.IsAssignableFrom <BadRequestResult>(result); }
public async Task ConfirmEmail_WhenCalledWithValidArgs_ReturnsOk() { // Arrange var req = new ConfirmationRequestDto() { UserId = "aaaaaaa", Code = "0" }; _mockUserManager .Setup(m => m.FindByIdAsync(It.IsAny <string>())) .ReturnsAsync(_user); _mockUserManager .Setup(m => m.ConfirmEmailAsync(It.IsAny <ApplicationUser>(), It.IsAny <string>())) .ReturnsAsync(IdentityResult.Success); // Act var result = await _sut.ConfirmEmail(req); // Assert Assert.IsAssignableFrom <OkResult>(result); }
public Task <HttpResponseMessage> ConfirmEmailAsync(ConfirmationRequestDto requestDto) { return(_httpService.PostAsync("Auth/ConfirmEmail", requestDto)); }