public async Task <IActionResult> Register([FromBody] UserRegisterationDto userRegisteration) { var user = _mapper.Map <ApplicationUser>(userRegisteration); var result = await _userManager.CreateAsync(user, userRegisteration.Password); if (!result.Succeeded) { foreach (var error in result.Errors) { ModelState.TryAddModelError(error.Code, error.Description); } return(BadRequest(ModelState)); } foreach (var role in userRegisteration.Roles) { if (await _roleManager.RoleExistsAsync(role)) { await _userManager.AddToRoleAsync(user, role); } } return(StatusCode(201)); }
public async Task RegisterUserWithInvalidData_Returns422BadRequest() { var requestBody = new UserRegisterationDto { FirstName = "someUser", LastName = "someUserLastName", }; var response = await _client.PostAsJsonAsync("/api/auth/register", requestBody); Assert.Equal(422, (int)response.StatusCode); }
public async Task RegisterUser_Returns201CreatedOnSuccess() { var userName = Guid.NewGuid().ToString(); var password = Guid.NewGuid().ToString(); var email = $"{Guid.NewGuid()}@gmail.com"; var requestBody = new UserRegisterationDto { FirstName = "someUser", LastName = "someUserLastName", UserName = userName, Password = password, Email = email }; var response = await _client.PostAsJsonAsync("/api/auth/register", requestBody); Assert.Equal(201, (int)response.StatusCode); }
public async Task Register_Returns201ObjectResultOnSuccess() { var userRegisterDto = new UserRegisterationDto { FirstName = "New User", LastName = "new User lastName", UserName = "******", Password = "******", Email = "*****@*****.**", }; // Act var result = await _controller.Register(userRegisterDto); var statusResult = result as ObjectResult; //Assert Assert.IsType <ObjectResult>(result); Assert.Equal(201, statusResult.StatusCode); }
public async Task <IActionResult> Register(UserRegisterationDto userRegistrationDto) { var user = _mapper.Map <User>(userRegistrationDto); var result = await _userManager.CreateAsync(user, userRegistrationDto.Password); if (!result.Succeeded) { foreach (var err in result.Errors) { ModelState.TryAddModelError(err.Code, err.Description); } _logger.LogError("Invalid model state for the UserRegistration object"); return(UnprocessableEntity(ModelState)); } await _userManager.AddToRoleAsync(user, "Jogger"); return(StatusCode(201, new { Success = true })); }