public async Task RegisterCustomer_ExistingCustomerCode_Fails() { var customer = new RegisterCustomerDto { CustomerCode = "0055_ALT-CM0103", Email = "*****@*****.**", Username = "******", FirstName = "Ian", LastName = "Clive", Password = "******", PhoneNumber = "+4412345678", }; Assert.NotNull(await Record.ExceptionAsync(async() => await _client.Accounts_RegisterCustomerAsync(customer))); Assert.NotNull(await Record.ExceptionAsync(async() => await _client.AuthenticateUserAsync("iclive", "password"))); using (var context = _factory.GetKIOTContext()) { Assert.False(context.Customers.Any(x => x.Username == "iclive")); } using (var context = _factory.GetIdentityContext()) { Assert.False(context.Users.Any(x => x.UserName == customer.Username)); } }
public async Task RegisterCustomer_InvalidData_Fails() { var customer = new RegisterCustomerDto { CustomerCode = "0055_ALT-CM0102", Email = "iclive@fake", Username = "******", FirstName = "Ian", LastName = "Clive", Password = "******", PhoneNumber = "+4412345678", }; Assert.NotNull(await Record.ExceptionAsync(async() => await _client.Accounts_RegisterCustomerAsync(customer))); Assert.NotNull(await Record.ExceptionAsync(async() => await _client.AuthenticateUserAsync("iclive", "password"))); customer.Email = "*****@*****.**"; customer.FirstName = null; Assert.NotNull(await Record.ExceptionAsync(async() => await _client.Accounts_RegisterCustomerAsync(customer))); Assert.NotNull(await Record.ExceptionAsync(async() => await _client.AuthenticateUserAsync("iclive", "password"))); customer.FirstName = "Ian"; customer.PhoneNumber = "1234566"; Assert.NotNull(await Record.ExceptionAsync(async() => await _client.Accounts_RegisterCustomerAsync(customer))); Assert.NotNull(await Record.ExceptionAsync(async() => await _client.AuthenticateUserAsync("iclive", "password"))); }
public async Task <IActionResult> Register([FromBody] RegisterCustomerDto dto) { var command = new RegisterCustomerCommand(dto.CustomerName); await _handler .HandleAsync(command); return(Ok()); }
public async Task <IActionResult> Register([FromBody] RegisterCustomerDto customer) { await mediator.DispatchAsync(new RegisterCustomerCommand( gender : customer.Gender, firstname : customer.Firstname, lastname : customer.Lastname, birthdate : customer.Birthdate, comment : customer.Comment )); return(Ok()); }
public async Task <ActionResult <UserDto> > RegisterCustomer(RegisterCustomerDto dto) { if (await UserExists(dto.Username)) { return(BadRequest("User taken")); } var user = _mapper.Map <AppUser>(dto); user.UserName = dto.Username; var result = await _userManager.CreateAsync(user, dto.Password); if (!result.Succeeded) { return(BadRequest(result.Errors)); } var roleResult = await _userManager.AddToRoleAsync(user, dto.CustomerType); // registerDto.UserRole); if (!roleResult.Succeeded) { return(BadRequest(roleResult.Errors)); } //add customer entity var customer = _mapper.Map <Customer>(dto); _uow.MastersRepository.AddCustomer(customer); if (!await _uow.Complete()) { return(BadRequest("Failed to update the customer entity")); } return(new UserDto { Username = user.UserName, Token = await _tokenService.CreateToken(user), KnownAs = user.KnownAs, Gender = user.Gender }); }
public async Task <IActionResult> RegisterCustomerAsync(RegisterCustomerDto customerDto, CancellationToken token) { return(new Presenter <CommandResponse>( await _mediator.Send(new RegisterCustomerRequest(customerDto), token)).ToIActionResult()); }