Example #1
0
        public async Task EditTechnicalAdvisor_WhenEditingExistingUser_ExpectedFieldsGetEdited()
        {
            ArrangeUsersDbSetWithOneTechnicalAdvisorInOneNationalSociety();

            var existingUserEmail = _nyssContext.Users.Single(u => u.Id == 123)?.EmailAddress;

            var editRequest = new EditTechnicalAdvisorRequestDto
            {
                Name                  = "New name",
                Organization          = "New organization",
                PhoneNumber           = "345",
                AdditionalPhoneNumber = "543"
            };

            await _technicalAdvisorService.Edit(123, editRequest);

            var editedUser = _nyssContext.Users.Single(u => u.Id == 123) as TechnicalAdvisorUser;

            editedUser.ShouldNotBeNull();
            editedUser.Name.ShouldBe(editRequest.Name);
            editedUser.Organization.ShouldBe(editRequest.Organization);
            editedUser.PhoneNumber.ShouldBe(editRequest.PhoneNumber);
            editedUser.EmailAddress.ShouldBe(existingUserEmail);
            editedUser.AdditionalPhoneNumber.ShouldBe(editRequest.AdditionalPhoneNumber);
        }
Example #2
0
        public async Task <Result> Edit(int technicalAdvisorId, EditTechnicalAdvisorRequestDto editTechnicalAdvisorRequestDto)
        {
            try
            {
                var user = await _nationalSocietyUserService.GetNationalSocietyUser <TechnicalAdvisorUser>(technicalAdvisorId);

                user.Name                  = editTechnicalAdvisorRequestDto.Name;
                user.PhoneNumber           = editTechnicalAdvisorRequestDto.PhoneNumber;
                user.Organization          = editTechnicalAdvisorRequestDto.Organization;
                user.AdditionalPhoneNumber = editTechnicalAdvisorRequestDto.AdditionalPhoneNumber;

                await _dataContext.SaveChangesAsync();

                return(Success());
            }
            catch (ResultException e)
            {
                _loggerAdapter.Debug(e);
                return(e.Result);
            }
        }
Example #3
0
 public async Task <Result> Edit(int technicalAdvisorId, [FromBody] EditTechnicalAdvisorRequestDto editTechnicalAdvisorRequestDto) =>
 await _technicalAdvisorService.Edit(technicalAdvisorId, editTechnicalAdvisorRequestDto);