Exemple #1
0
        public async Task TestUpdateUserOkResponse()
        {
            // Arrange
            const string expectedUserId = "expectedUserId";

            var request = new PutUserRequest
            {
                Email = "*****@*****.**"
            };

            var user = new MeUser
            {
                UserId = expectedUserId,
                Email  = "*****@*****.**"
            };

            _userUpdateService.Setup(up => up.Handle(It.IsAny <UserUpdateQuery>()))
            .Returns(Task.FromResult(user));
            Controller.ControllerContext = GetControllerContext();

            // Act
            var response = await Controller.UpdateUser(It.IsAny <string>(), request);

            // Assert
            response.Result.Should().BeAssignableTo <OkObjectResult>();
            var result = (OkObjectResult)response.Result;

            result.Value.Should().BeAssignableTo <PutUserResponse>();
            var model = (PutUserResponse)result.Value;

            model.Errors.Count.Should().Be(0);
            model.Success.Should().BeTrue();
            model.UserId.Should().Be(expectedUserId);
        }
Exemple #2
0
        static async Task RunUpdateUserCommandAsync()
        {
            Console.WriteLine("Fill in new user details");

            Console.WriteLine("ID:");
            int id = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("First name:");
            var firstName = Console.ReadLine();

            Console.WriteLine("Last name:");
            var lastName = Console.ReadLine();

            Console.WriteLine("Age:");
            var age = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Email:");
            var email = Console.ReadLine();

            var user = new PutUserRequest()
            {
                FirstName = firstName, LastName = lastName, Age = age, Email = email
            };

            Console.WriteLine("Loading...");

            await _httpService.UpdateUserAsync(id, user);

            Console.WriteLine("User successfully updated");
        }
Exemple #3
0
        public async Task UpdateUserAsync(int id, PutUserRequest user)
        {
            var json    = JsonConvert.SerializeObject(user);
            var content = new StringContent(json, Encoding.UTF8, "application/json");

            var response = await _client.PutAsync($"{baseUserAPIURL}/{id}", content);

            if (!response.IsSuccessStatusCode)
            {
                throw new HttpServiceException("Service error");
            }
        }
        public ActionResult <Models.User> Post([FromBody] PutUserRequest value)
        {
            var response = _mediator.Send(value).GetAwaiter().GetResult();

            if (response != null)
            {
                return(Created(Request.QueryString.Value, response));
            }
            else
            {
                return(BadRequest("Post Failed but no error raised"));
            }
        }
        public void TestPutUserRequest()
        {
            var expectedEmail = "*****@*****.**";

            var user = new PutUserRequest
            {
                Email = expectedEmail
            };

            var response = _mapper.Map <MeUser>(user);

            response.Email.Should().Be(expectedEmail);
        }
        public PutUserResponse Put(PutUserRequest request)
        {
            var model = request.Data.ToServiceModel();

            if (request.Id.HasValue)
            {
                model.Id = request.Id.Value;
            }
            var user = userService.SaveUser(model, false, true);

            return(new PutUserResponse {
                Data = user.Id
            });
        }
        public async Task <ActionResult <IEnumerable <User> > > Put(PutUserRequest putUserRequest)

        {
            var putUserResponse = await _mediator.Send(new PutUserCommand(putUserRequest.Id,
                                                                          putUserRequest.Nome,
                                                                          putUserRequest.CPF,
                                                                          putUserRequest.Email,
                                                                          putUserRequest.Telefone,
                                                                          putUserRequest.Sexo,
                                                                          putUserRequest.DataNascimento,
                                                                          putUserRequest.UserGithub));


            if (putUserResponse == null)
            {
                return(NotFound());
            }
            return(Ok(putUserResponse));
        }
Exemple #8
0
        public async Task TestUpdateUserVerificationFailure()
        {
            // Arrange
            Controller.ModelState.AddModelError("An", "Error");

            // Act
            var request  = new PutUserRequest();
            var response = await Controller.UpdateUser(It.IsAny <string>(), request);

            // Assert
            response.Result.Should().BeAssignableTo <BadRequestObjectResult>();
            var result = (BadRequestObjectResult)response.Result;

            result.Value.Should().BeAssignableTo <PutUserResponse>();
            var model = (PutUserResponse)result.Value;

            model.Errors.Count.Should().Be(1);
            model.Success.Should().BeFalse();
        }
Exemple #9
0
        public async Task TestUpdateUserDocumentClientException()
        {
            // Arrange
            var request = new PutUserRequest();

            _userUpdateService.Setup(up => up.Handle(It.IsAny <UserUpdateQuery>()))
            .Throws(CreateDocumentClientExceptionForTesting());
            Controller.ControllerContext = GetControllerContext();

            // Act
            var response = await Controller.UpdateUser(It.IsAny <string>(), request);

            // Assert
            response.Result.Should().BeAssignableTo <NotFoundObjectResult>();
            var result = (NotFoundObjectResult)response.Result;

            result.Value.Should().BeAssignableTo <PutUserResponse>();
            var model = (PutUserResponse)result.Value;

            model.Errors.Count.Should().Be(0);
            model.Success.Should().BeTrue();

            model.UserId.Should().Be(null);
        }
        public async Task <ActionResult <PutUserResponse> > UpdateUser(string meUserId, [FromBody] PutUserRequest putUser)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(new PutUserResponse()));
            }

            try
            {
                var userUpdateEmail = Mapper.Map <UserUpdateEmail>(putUser);
                userUpdateEmail.UserId = meUserId;
                var currentUser = await CurrentUser();

                var updatedUser = await _userUpdateService.Handle(new UserUpdateQuery(userUpdateEmail, currentUser));

                return(Ok(Mapper.Map <PutUserResponse>(updatedUser)));
            }
            catch (DocumentClientException)
            {
                return(NotFound(new PutUserResponse()));
            }
            catch (ArgumentException)
            {
                return(NotFound(new PutUserResponse()));
            }
        }
Exemple #11
0
 public PutUserResponse Put(PutUserRequest request)
 {
     throw new CmsException(UsersApiConstants.UsersApiHasNoImplementationMessage);
 }
 public PutUserResponse Put(PutUserRequest request)
 {
     throw new CmsException(UsersApiConstants.UsersApiHasNoImplementationMessage);
 }
Exemple #13
0
        public PutUserResponse Put(PutUserRequest request)
        {
            var model = request.Data.ToServiceModel();
            if (request.Id.HasValue)
            {
                model.Id = request.Id.Value;
            }
            var user = userService.SaveUser(model, false, true);

            return new PutUserResponse { Data = user.Id };
        }