public IActionResult UpdateUsername([FromBody] UsernameDto usernameDto) { var identity = HttpContext.User.Identity as ClaimsIdentity; string email = identity.FindFirst(ClaimTypes.Email).Value; User user = _userService.GetByEmail(email); if (user == null) { return(BadRequest(new ErrorResultDto { Name = ErrorNames.DefaultError, Type = ErrorTypes.Danger, Value = SecurityMessages.SystemError })); } if (!Regex.IsMatch(usernameDto.UserName, "^[a-zA-Z0-9]*$")) { return(BadRequest(new ErrorResultDto { Name = ErrorNames.DefaultError, Type = ErrorTypes.Danger, Value = SecurityMessages.SystemError })); } IResult usernameExistResult = _userService.UsernameExists(usernameDto.UserName); if (!usernameExistResult.Success) { return(BadRequest(new ErrorResultDto { Name = ErrorNames.UsernameExistError, Type = ErrorTypes.Warning, Value = usernameExistResult.Message })); } user.UserName = usernameDto.UserName; user.NormalizedUserName = usernameDto.UserName.ToUpper(new CultureInfo("en-Us")); IResult updateResult = _userService.Update(user); if (!updateResult.Success) { return(BadRequest(new ErrorResultDto { Name = ErrorNames.DefaultError, Type = ErrorTypes.Danger, Value = SecurityMessages.SystemError })); } return(Ok(updateResult.Message)); }
public async Task <IActionResult> ValidateUsername([FromBody] UsernameDto usernameDto) { ResponseDto <ValidationDto> okResponse = new ResponseDto <ValidationDto>(true); var response = await _utilities.ValidateUsernameAsync(usernameDto.Username); okResponse.Data = response; return(Ok(okResponse)); }
public async Task <GeoCoordinatesDto> GetUsersLocation(UsernameDto usernameDto) { GeoCoordinatesEntity entity = _dbContext.GeoCoordinates.Single(x => x.Username == usernameDto.Username); return(new GeoCoordinatesDto() { latitude = entity.latitude, longitude = entity.longitude }); }
public async Task <IActionResult> GetUserWithRoles(UsernameDto userDto) { var user = await _userManager.FindByNameAsync(userDto.UserName); if (user == null) { return(BadRequest($"No user with UserName {userDto.UserName} found.")); } var userRoles = await _userManager.GetRolesAsync(user); return(Ok(new UserWithRolesDto { User = _mapper.Map <UsernameDto>(user), Roles = userRoles.Select(r => new RoleDto { Name = r }) })); }
public async Task ValidateUsername_CallWithMockedIUtilities_ReturnOkObjectResult() { // Arrange var utilitiesMock = new Mock <IUtilities>(); var notifierMock = new Mock <INotifier>(); var username = "******"; var usernameDto = new UsernameDto() { Username = username }; var validationDto = new ValidationDto(true, "username valid"); utilitiesMock.Setup(u => u.ValidateUsernameAsync(username)).ReturnsAsync(validationDto); var controller = new UtilitiesController(utilitiesMock.Object, notifierMock.Object); // Act var result = await controller.ValidateUsername(usernameDto); var response = (OkObjectResult)result; // Assert Assert.IsType <OkObjectResult>(result); Assert.IsType <ResponseDto <ValidationDto> >(response.Value); }