Esempio n. 1
0
        public async Task <Register.Response> Register(Register.Request request, CancellationToken cancellationToken)
        {
            var response = await _identity.CreateUser(new CreateUser.Request
            {
                Username = request.Username,
                Email    = request.Email,
                Password = request.Password,
                Role     = RoleConstants.UserRole
            }, cancellationToken);

            if (response.IsSuccess)
            {
                var domainUser = new Domain.User
                {
                    Id          = response.UserId,
                    Username    = request.Username,
                    Name        = request.Name,
                    LastName    = request.LastName,
                    Email       = request.Email,
                    CreatedDate = DateTime.UtcNow,
                    Phone       = request.Phone
                };

                await _repository.Save(domainUser, cancellationToken);

                return(new Register.Response
                {
                    UserId = response.UserId
                });
            }

            throw new UserRegisterException(string.Join(",", response.Errors));
        }
Esempio n. 2
0
        public async Task <Register.Response> Register(Register.Request registerRequest, CancellationToken cancellationToken)
        {
            var response = await _identityService.CreateUser(
                new CreateUser.Request
            {
                Username = registerRequest.Username, Password = registerRequest.Password,
                Role     = RoleConstants.UserRole
            }, cancellationToken);

            if (response.IsSuccess)
            {
                var domainUser = new Domain.User
                {
                    Id         = response.UserId,
                    FirstName  = registerRequest.FirstName,
                    LastName   = registerRequest.LastName,
                    MiddleName = registerRequest.MiddleName,
                    CreatedAt  = DateTime.UtcNow
                };

                await _repository.Save(domainUser, cancellationToken);

                return(new Register.Response
                {
                    UserId = response.UserId
                });
            }

            throw new UserRegisteredException(string.Join(';', response.Errors));
        }
Esempio n. 3
0
        public async Task <ActionResult <AuthData> > Register(Register.Request request)
        {
            var result = await _mediator.Send(request);

            if (result != null)
            {
                return(result);
            }

            return(BadRequest("Unable to create user"));
        }
Esempio n. 4
0
        public async Task CanRegister()
        {
            var registerRequest = new Register.Request()
            {
                Email = "*****@*****.**", Password = Password, ConfirmPassword = Password
            };
            var response = await client.PostAsync("/api/auth/register", HttpClientUtils.CreateContent(registerRequest));

            var data = await response.Content.ReadFromJsonAsync <AuthData>();

            Assert.AreEqual(HttpStatusCode.OK, response.StatusCode);
            Assert.IsNotNull(data);
            Assert.IsTrue(!string.IsNullOrEmpty(data.Token));
        }
        public async Task <Result <string, Error> > Register(Register.Request request)
        {
            var user = new ApplicationUser {
                UserName = Guid.NewGuid().ToString(), Email = request.Email.ToString()
            };
            var result = await _userManager.CreateAsync(user, request.Password.ToString());

            if (result.Succeeded)
            {
                return(Result.Success <string, Error>(await GenerateSerializedSecurityTokenForUserWithEmail(request.Email)));
            }
            else
            {
                return(Result.Failure <string, Error>(new Error.BadRequest(string.Join(", ", result.Errors.Select(x => x.Description)))));
            }
        }
Esempio n. 6
0
        public async Task Register_Return_Response_Id_Sucess(
            Register.Request registerRequest, CancellationToken cancellationToken)
        {
            registerRequest.Email = "*****@*****.**";
            //Arrange
            var createUserResponse = new Fixture()
                                     .Build <CreateUser.Response>()
                                     .Do(_ => _.IsSuccess = true)
                                     .Create();

            ConfigureIdentity(createUserResponse);

            //Act
            Register.Response userRegisterResponse = await _userService.Register(registerRequest, cancellationToken);

            //Assert
            _identityServiceMock.Verify();
            Assert.NotNull(userRegisterResponse);
            Assert.NotEqual(default, userRegisterResponse.UserId);
Esempio n. 7
0
        public async Task <Register.Response> Register(Register.Request registerRequest, CancellationToken cancellationToken)
        {
            var user = new Domain.User
            {
                Name      = registerRequest.Name,
                Password  = registerRequest.Password,
                CreatedAt = DateTime.UtcNow,
                UpdatedAt = DateTime.UtcNow
            };

            var userInRepo = await _repository.FindWhere(u => u.Name == registerRequest.Name, cancellationToken);

            if (userInRepo != null)
            {
                throw new ConflictException("Пользователь с таким именем уже зарегестрирован!");
            }

            await _repository.Save(user, cancellationToken);

            return(new Register.Response
            {
                UserId = user.Id
            });
        }
Esempio n. 8
0
 public async Task <string> Register(Register.Request request)
 {
     return(await _mediator.Send(request));
 }
 public async Task <Register.Response> Register([FromBody] Register.Request request)
 => await Handle(request);
        public async Task <IActionResult> Register(Register.Request request)
        {
            var result = await _identityService.Register(request);

            return(result.MatchToActionResult(v => Ok(v)));
        }