Exemple #1
0
        public async Task <IActionResult> Put(int id, ClienteEndereco endereco, [FromServices] ClienteEnderecoValidator validator)
        {
            try
            {
                if (id != endereco.Id)
                {
                    return(BadRequest());
                }

                var result = await validator.ValidateAsync(endereco);

                if (!result.IsValid)
                {
                    return(UnprocessableEntity(new Retorno <ClienteEndereco>(result.Errors)));
                }

                _repository.UpdateEndereco(endereco);
                await _uow.Commit();

                return(Ok(new Retorno <ClienteEndereco> {
                    Mensagem = "Endereço atualizado com sucesso", Dados = endereco
                }));
            }
            catch (Exception ex)
            {
                await _uow.Rollback();

                return(BadRequest(new Retorno <ClienteEndereco>(ex.InnerException?.Message)));
            }
        }
Exemple #2
0
        public void ClienteEndereco_DeveSerInvalido()
        {
            //Arrange
            var validator = new ClienteEnderecoValidator();

            var clienteEndereco = new Faker <ClienteEndereco>("pt_BR")
                                  .RuleFor(m => m.Id, f => f.Random.Number(0))
                                  .RuleFor(m => m.Logradouro, f => f.Random.String2(1))
                                  .RuleFor(m => m.Complemento, f => f.Random.String2(101))
                                  .RuleFor(m => m.Bairro, f => f.Random.String2(101))
                                  .RuleFor(m => m.Cidade, f => f.Random.String2(1))
                                  .RuleFor(m => m.Uf, f => f.Random.String2(101))
                                  .RuleFor(m => m.Cep, f => f.Random.String2(101))
                                  .Generate(1)[0];

            //Act
            var result = validator.Validate(clienteEndereco);

            //Assert
            result.Errors.Count.Should().BeGreaterThan(0);
        }
Exemple #3
0
        public void ClienteEndereco_DeveSerValido()
        {
            //Arrange
            var validator = new ClienteEnderecoValidator();

            var clienteEndereco = new Faker <ClienteEndereco>("pt_BR")
                                  .RuleFor(m => m.Id, f => f.Random.Number(int.MaxValue))
                                  .RuleFor(m => m.Logradouro, f => f.Address.StreetName())
                                  .RuleFor(m => m.Numero, f => int.Parse(f.Address.BuildingNumber()))
                                  .RuleFor(m => m.Complemento, f => f.Address.SecondaryAddress())
                                  .RuleFor(m => m.Bairro, f => f.Random.String2(10))
                                  .RuleFor(m => m.Cidade, f => f.Address.City())
                                  .RuleFor(m => m.Uf, f => f.Address.StateAbbr())
                                  .RuleFor(m => m.Cep, f => f.Address.ZipCode("########"))
                                  .RuleFor(m => m.Ativo, f => f.Random.Bool())
                                  .RuleFor(m => m.DataCriacao, f => f.Date.Recent())
                                  .Generate(1)[0];

            //Act
            var result = validator.Validate(clienteEndereco);

            //Assert
            result.Errors.Count.Should().Be(0);
        }