示例#1
0
        public void ShouldHaveValidationErrorWithGreatherThan150CharactersName(string name)
        {
            UpdateNameUserRequestModel requestModel = new UpdateNameUserRequestModel()
            {
                Name = name
            };

            _validator.ShouldHaveValidationErrorFor(r => r.Name, requestModel).WithErrorMessage("name must be less than 150 characters.");
        }
示例#2
0
        public void ShouldHaveValidationErrorWithNullName(string name)
        {
            UpdateNameUserRequestModel requestModel = new UpdateNameUserRequestModel()
            {
                Name = name
            };

            _validator.ShouldHaveValidationErrorFor(r => r.Name, requestModel).WithErrorMessage("name cannot be empty.");
        }
示例#3
0
        public async Task <IActionResult> UpdateName(UpdateNameUserRequestModel model)
        {
            try
            {
                await _userService.UpdateUserName(this.GetUserIdFromToken(), model);

                return(Ok());
            }
            catch (Exception exception)
            {
                return(this.HandleExceptionToUserAndLogIfExceptionIsUnexpected(exception));
            }
        }
示例#4
0
        public async Task UpdateUserName(string userId, UpdateNameUserRequestModel model)
        {
            await new UpdateNameUserValidator().ValidateRequestModelAndThrow(model);

            User user = await _userRepository.GetById(Guid.Parse(userId));

            ThrowIfUserIsNullOrNotConfirmed(user);

            user.UpdateName(model.Name);

            _userRepository.Update(user);
            await _userRepository.Save();
        }
        public async Task ShouldReturnOkOnCallUpdateUserName()
        {
            Guid id = await InsertUserOnDatabase();

            _httpClient.InsertAuthorizationTokenOnRequestHeader(_authorizationTokenHelper.CreateToken(id));
            UpdateNameUserRequestModel model = new UpdateNameUserRequestModel()
            {
                Name = "User Name"
            };

            HttpResponseMessage httpResponse = await _httpClient.PutAsync("../users/name", _createRequestHelper.CreateStringContent(model));

            Assert.Equal((int)HttpStatusCode.OK, (int)httpResponse.StatusCode);
        }
示例#6
0
        public async Task ShouldUpdateUserName()
        {
            UpdateNameUserRequestModel model = new UpdateNameUserRequestModel()
            {
                Name = "User Name"
            };

            _userRepositoryMock.GetById(Arg.Is <Guid>(id => id == _fakeConfirmedInsertedUser.Id)).Returns(_fakeConfirmedInsertedUser);

            Exception exception = await Record.ExceptionAsync(() => _userService.UpdateUserName(_fakeConfirmedInsertedUser.Id.ToString(), model));

            Assert.Null(exception);
            _userRepositoryMock.Received(1).Update(Arg.Any <User>());
            await _userRepositoryMock.Received(1).Save();
        }
示例#7
0
        public async Task ShouldThrowResourceNotFoundOnTryUpdateNotExistsUserName()
        {
            Guid notExistsUserGuid           = Guid.NewGuid();
            User notExistsUser               = null;
            UpdateNameUserRequestModel model = new UpdateNameUserRequestModel()
            {
                Name = "User Name"
            };

            _userRepositoryMock.GetById(Arg.Is <Guid>(id => id == notExistsUserGuid)).Returns(notExistsUser);

            Exception exception = await Record.ExceptionAsync(() => _userService.UpdateUserName(notExistsUserGuid.ToString(), model));

            Assert.IsType <ResourceNotFoundException>(exception);
        }