Пример #1
0
        public Client CreateNewClient(CreateNewClientInput input)
        {
            var existingEmail = _clientRepository.FirstOrDefault(c => c.Email == input.Email);

            if (existingEmail != null)
            {
                throw new UserFriendlyException("This email address is already used !");
            }

            var client = Client.Create(input.FirstName,
                                       input.LastName,
                                       input.Email,
                                       input.Phone,
                                       input.BirthDate,
                                       input.Nationality);

            _clientRepository.Insert(client);

            return(client);
        }
        public void Should_Create_A_Client()
        {
            //ARRANGE
            var input = new CreateNewClientInput
            {
                FirstName   = "Test",
                LastName    = "Client",
                Email       = "*****@*****.**",
                Phone       = "11111",
                Nationality = "French"
            };

            //ACT
            var result = _clientAppService.CreateNewClient(input);

            //ASSERT
            UsingDbContext(context =>
            {
                context.Clients.Count().ShouldBe(1);
            });
        }