Exemplo n.º 1
0
        public async Task Post_CadastrarClienteTest()
        {
            #region Arrange

            var resource = $"api/Cliente";

            var command = new CreateClienteCommand
            {
                Nome           = "Gustavo Santanna",
                Cpf            = "00425718719",
                Idade          = 46,
                DataNascimento = new DateTime(1974, 06, 25)
            };

            #endregion

            #region Act

            var request = new StringContent(JsonConvert.SerializeObject(command),
                                            Encoding.UTF8, "application/json");

            var response = await httpClient.PostAsync(resource, request);

            #endregion

            #region Assert

            response.StatusCode.Should().Be(HttpStatusCode.OK);

            #endregion
        }
Exemplo n.º 2
0
        public static Cliente ParaEntidadeCliente(this CreateClienteCommand command)
        {
            var cliente = new ClienteBuilder()
                          .Nome(command.PrimeiroNome, command.UltimoNome)
                          .Documento(command.Cpf)
                          .Email(command.Email)
                          .Build();

            return(cliente);
        }
Exemplo n.º 3
0
        public IActionResult Post(CreateClienteCommand command)
        {
            try
            {
                clienteApplicationService.Add(command);

                return(Ok(new { Message = "Cliente cadastrado com sucesso" }));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e.Message));;
            }
        }
Exemplo n.º 4
0
        public async Task <IActionResult> Cliente([FromBody] CreateClienteCommand command)
        {
            _logger.LogInformation($"#CreateClienteCommand = {JsonConvert.SerializeObject(command)}");
            var result = await _bus.Send(command);

            if (!_notificationContext.HasErrorNotifications)
            {
                return(Created("Cliente", new { Result = $"Cliente cadastrado: {result}" }));
            }
            var notifications = _notificationContext.GetErrorNotifications();

            return(BadRequest(notifications));
        }
        public void CommandValido()
        {
            var command = new CreateClienteCommand
            {
                PrimeiroNome = Fake.Person.FirstName,
                UltimoNome   = Fake.Person.LastName,
                Email        = Fake.Person.Email,
                Cpf          = Fake.Person.Cpf()
            };

            command.EValido()
            .Should().BeTrue(ExtrairAsNotificacoes(command));
        }
Exemplo n.º 6
0
        public void Add(CreateClienteCommand command)
        {
            var cliente = new Cliente
            {
                Nome           = command.Nome,
                Cpf            = command.Cpf,
                Idade          = command.Idade,
                DataNascimento = command.DataNascimento
            };

            var validation = new ClienteValidation().Validate(cliente);

            if (!validation.IsValid)
            {
                throw new ValidationException(validation.Errors.ToString());
            }

            clienteRepository.Add(cliente);
        }
Exemplo n.º 7
0
        public async Task <IActionResult> Post(CreateClienteCommand createClienteCommand)
        {
            var result = await Send(createClienteCommand);

            return(Created("Created", result));
        }
Exemplo n.º 8
0
        public async Task <JsonResult> OnPostCreate(CreateClienteCommand cliente)
        {
            var response = await Mediator.Send(cliente);

            return(new JsonResult(new { response }));
        }