public void ClienteConsistente_Valid_True()
        {
            Cliente = new Cliente
            {
                CPF = "30390600822",
                DataNascimento = new DateTime(1982, 01, 01),
                Email= "*****@*****.**"
            };

            Assert.IsTrue(Cliente.IsValid());
        }
        public void ClienteConsistente_Valid_False()
        {
            Cliente = new Cliente
            {
                CPF = "30390600821",
                DataNascimento = new DateTime(2005, 01, 01),
                Email = "cliente2cliente.com.br"
            };

            Assert.IsFalse(Cliente.IsValid());
            Assert.IsTrue(Cliente.ValidationResult.Erros.Any(e => e.Message.Equals("Cliente informou um CPF inválido.")));
            Assert.IsTrue(Cliente.ValidationResult.Erros.Any(e => e.Message.Equals("Cliente informou um e-mail inválido.")));
            Assert.IsTrue(Cliente.ValidationResult.Erros.Any(e => e.Message.Equals("Cliente não tem maioridade para acessar.")));
        }
        public Cliente Adicionar(Cliente cliente)
        {
            if (!cliente.IsValid())
            {
                return cliente;
            }

            var result = new ClienteAptoParaCadastroValidation(_clienteRepository).Validate(cliente);

            if (!result.IsValid)
            {
                cliente.ValidationResult = result;
                return cliente;
            }

            return _clienteRepository.Adicionar(cliente);
        }