public void Create_DtoIsNull_ThrowArgumentNullException()
        {
            _dto = null;
            _personGroupLogic = new PersonGroupLogic(_personGroupAPI.Object, _responseHelper.Object);

            Assert.That(() => _personGroupLogic.Create(_dto), Throws.ArgumentNullException);
        }
Пример #2
0
        private void ExecutePersonGroupCreation()
        {
            WriteLine("\n\tYou have selected the option for creating a person-group.");
            WriteLine("\t\t* Use numbers, lower case letters, '-' and '_'. The maximum length of the personGroupId is 64.");

            var validators = new Validators();


            Write("\n\n\tEnter an ID for the group that you wish to create: ");
            string personGroupId = ReadLine();

            validators.PersonGroup(personGroupId);
            var personGroupDto = new PersonGroupDto {
                PersonGroupId = personGroupId
            };

            _taskList.Add(Task.Factory.StartNew(() =>
            {
                try
                {
                    var result = _personGroupLogic.Create(personGroupDto);
                    WriteLine("\t" + result.Message);
                }

                catch (Exception exception)
                {
                    WriteLine($"\n\tError Message: { exception.Message }");
                    WriteLine($"\n\tInner Exception: { exception.InnerException }");
                    WriteLine($"\n\tStackTrace: { exception.StackTrace }");
                    ReadLine();
                }
            }));
        }
        public void Create_DtoIsInvalid_ThrowInvalidOperationException()
        {
            _dto = new PersonGroupDto {
                PersonGroupId = "$"
            };
            _personGroupLogic = new PersonGroupLogic(_personGroupAPI.Object, _responseHelper.Object);

            Assert.That(() => _personGroupLogic.Create(_dto), Throws.InvalidOperationException);
        }
        public async Task UpdateGroup()
        {
            UpdatePersonGroupRequest = PersonGroupRequestGenerator.Update(EditGroup.PersonGroupId, EditGroup.Name, EditGroup.UserData);
            UpdateRequestList();

            _ = await MakeRequest <string>(UpdatePersonGroupRequest).ConfigureAwait(false);

            EditGroup = new PersonGroupDto();

            // Refresh list.
            PersonGroups = await MakeRequest <List <PersonGroupDto> >(PersonGroupListRequest).ConfigureAwait(false);
        }
        public void Create_PersonGroupExists_ResponseDataMustBeFalse()
        {
            _personGroupAPI.Setup(api => api.Create("unit-test"))
            .Returns(Task.FromResult(new HttpResponseMessage {
                StatusCode = HttpStatusCode.Conflict
            }));
            _dto = new PersonGroupDto {
                PersonGroupId = "unit-test"
            };

            _responseHelper.Setup(rh => rh.CreateResponse <bool>(
                                      It.Is <HttpResponseMessage>(res => res.IsSuccessStatusCode == false),
                                      It.IsAny <string>()))
            .Returns(new Response {
                Data = false
            });

            _personGroupLogic = new PersonGroupLogic(_personGroupAPI.Object, _responseHelper.Object);

            var result = _personGroupLogic.Create(_dto);

            Assert.IsFalse((bool)result.Data);
        }
Пример #6
0
        public Response Create(PersonGroupDto dto)
        {
            if (dto == null)
            {
                throw new ArgumentNullException("dto", "The object that you provided cannot be null.");
            }

            var validationResults = new PersonGroupValidator().Validate(dto);

            if (validationResults.IsValid)
            {
                var result = _personGroupAPI.Create(dto.PersonGroupId)
                             .Result;

                return(_responseHelper.CreateResponse <bool>(
                           result,
                           $"Person-group '{ dto.PersonGroupId }' has been successfully created."));
            }
            else
            {
                throw new InvalidOperationException("The person group ID that you have provided is invalid.");
            }
        }