public void ClienteApto_IsValid_False()
        {
            // Arrange
            var cliente = new Cliente
            {
                Cpf = new Cpf {
                    Numero = "82789431094"
                },
                Email = new Email {
                    Endereco = "*****@*****.**"
                }
            };

            // Act
            var repo = MockRepository.GenerateStub <IClienteRepository>();

            repo.Stub(s => s.ObterPorCpf(cliente.Cpf.Numero)).Return(cliente);
            repo.Stub(s => s.ObterPorEmail(cliente.Email.Endereco)).Return(cliente);

            var validationReturn = new ClienteAptoParaCadastroValidation(repo).Validate(cliente);

            // Assert
            Assert.IsFalse(validationReturn.IsValid);
            Assert.IsTrue(validationReturn.Erros.Any(e => e.Message == "CPF já cadastrado! Esqueceu sua senha?"));
            Assert.IsTrue(validationReturn.Erros.Any(e => e.Message == "E-mail já cadastrado! Esqueceu sua senha?"));
            Assert.IsTrue(validationReturn.Erros.Any(e => e.Message == "Cliente não informou um endereço"));
        }
        public void ClienteApto_Validation_True()
        {
            Cliente = new Cliente()
            {
                CPF = "3039060022",
                Email = "*****@*****.**"
            };

            Cliente.Enderecos.Add(new Endereco());
            // Mock: Stub - Fake - Mole
            var stubRepo = MockRepository.GenerateStub<IClienteRepository>();
            stubRepo.Stub(s => s.ObterPorCPF(Cliente.CPF)).Return(null);
            stubRepo.Stub(s => s.ObterPorEmail(Cliente.Email)).Return(null);

            var cliValidation = new ClienteAptoParaCadastroValidation(stubRepo);
            Assert.IsTrue(cliValidation.Validate(Cliente).IsValid);
        }
        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);
        }
        public void ClienteApto_Validation_True()
        {
            Cliente = new Cliente()
            {
                CPF   = "12345678912",
                Email = "*****@*****.**"
            };

            Cliente.Enderecos.Add(new Endereco());
            var stubRepo = MockRepository.GenerateStub <IClienteRepository>();

            stubRepo.Stub(s => s.ObterPorEmail(Cliente.Email)).Return(null);
            stubRepo.Stub(s => s.ObterPorCpf(Cliente.CPF)).Return(null);

            var cliValidation = new ClienteAptoParaCadastroValidation(stubRepo);

            Assert.IsTrue(cliValidation.Validate(Cliente).IsValid);
        }
        public void ClienteApto_IsValid_True()
        {
            //Arrange
            var cliente = new Cliente
            {
                CPF   = "04335098057",
                Email = "*****@*****.**"
            };

            //Act
            var repo = MockRepository.GenerateStub <IClienteRepository>();

            repo.Stub(s => s.ObterClienteUnico(cliente)).Return(null);
            var validationReturn = new ClienteAptoParaCadastroValidation(repo).Validate(cliente);

            //Assert
            Assert.IsTrue(validationReturn.IsValid);
        }
        public void ClienteApto_IsValid_False()
        {
            //Arrange
            var cliente = new Cliente
            {
                CPF   = "04335098057",
                Email = "*****@*****.**"
            };

            //Act
            var repo = MockRepository.GenerateStub <IClienteRepository>();

            repo.Stub(s => s.ObterClienteUnico(cliente)).Return(cliente);
            var validationReturn = new ClienteAptoParaCadastroValidation(repo).Validate(cliente);

            //Assert
            Assert.IsFalse(validationReturn.IsValid);
            Assert.IsTrue(validationReturn.Erros.Any(e => e.Message == "Cliente com CPF ou E-mail já cadastrado."));
        }
Пример #7
0
        public void ClienteApto_Validation_False()
        {
            Cliente = new Cliente()
            {
                CPF   = "30390600822",
                Email = "*****@*****.**"
            };

            var stubRepo = MockRepository.GenerateStub <IClienteRepository>();

            stubRepo.Stub(s => s.ObterPorEmail(Cliente.Email)).Return(Cliente);
            stubRepo.Stub(s => s.ObterPorCpf(Cliente.CPF)).Return(Cliente);

            var cliValidation = new ClienteAptoParaCadastroValidation(stubRepo);
            var result        = cliValidation.Validate(Cliente);

            Assert.IsFalse(cliValidation.Validate(Cliente).IsValid);
            Assert.IsTrue(result.Erros.Any(e => e.Message == "CPF já cadastrado! Esqueceu sua senha?"));
            Assert.IsTrue(result.Erros.Any(e => e.Message == "E-mail já cadastrado! Esqueceu sua senha?"));
        }
Пример #8
0
        public void ClienteApto_IsValid_True()
        {
            // Arrange
            var cliente = new Cliente()
            {
                CPF   = "30390600822",
                Email = "*****@*****.**"
            };

            // Act
            var repo = MockRepository.GenerateStub <IClienteRepository>();

            repo.Stub(s => s.ObterPorCpf(cliente.CPF)).Return(null);
            repo.Stub(s => s.ObterPorEmail(cliente.Email)).Return(null);

            var validationReturn = new ClienteAptoParaCadastroValidation(repo).Validate(cliente);

            // Assert
            Assert.IsTrue(validationReturn.IsValid);
        }
Пример #9
0
        public void ClienteApto_Validation_False()
        {
            Cliente = new Cliente()
            {
                CPF   = "30390600822",
                Email = "*****@*****.**"
            };
            //Cliente.Enderecos.Add(new Endereco());

            var stupRepo = MockRepository.GenerateStub <IClienteRepository>();

            stupRepo.Stub(s => s.ObterPorEmail(Cliente.Email)).Return(Cliente);
            stupRepo.Stub(s => s.ObterPorCpf(Cliente.CPF)).Return(Cliente);

            var cliValidation = new ClienteAptoParaCadastroValidation(stupRepo);
            var result        = cliValidation.Validate(Cliente);

            Assert.IsFalse(cliValidation.Validate(Cliente).IsValid);
            Assert.IsTrue(result.Erros.Any(e => e.Message == "CPF Já cadastrado"));
            Assert.IsTrue(result.Erros.Any(e => e.Message == "E -mail já cadastrado!"));
            Assert.IsTrue(result.Erros.Any(e => e.Message == "Cliente deve possuir pelo menos um endereço!"));
        }
Пример #10
0
        public void ClienteApto_IsValid_False()
        {
            // Arrange
            var cliente = new Cliente
            {
                CPF   = "30390600822",
                Email = "*****@*****.**"
            };

            // Act
            // MOCK
            var repo = MockRepository.GenerateStub <IClienteRepository>();

            repo.Stub(s => s.ObterPorCpf(cliente.CPF)).Return(cliente);
            repo.Stub(s => s.ObterPorEmail(cliente.Email)).Return(cliente);

            var validationReturn = new ClienteAptoParaCadastroValidation(repo).Validate(cliente);

            // Assert
            Assert.IsFalse(validationReturn.IsValid);
            Assert.IsTrue(validationReturn.Erros.Any(e => e.Message == "Cliente com CPF ou E-mail já cadastrado"));
        }
Пример #11
0
      public void ClienteApto_IsValid_False()
      {
          var cliente = new Cliente()
          {   //abaixo você não saberá qual falhou??
              CPF = new CPF()
              {
                  Numero = "30390600822"
              },
              Email = new Email()
              {
                  endereco = "cliente2cliente.com"
              },
          };

          /*para ser apto deve ter um CPF e Email que não esteja registrado no banco
           * Teste de unidade não depende de estrutura, entao ele não
           * vai no banco, ele nao vai usar a connectionstring...
           * ue.. e como pego informação do banco se nao posso ir la?
           * entao é criar um MOC que é uma classe que finge fazer as coisas
           * que as outras coisas fazem, ele finge que vai ao banco, para usar
           * precisa usar um framework, tem o rinomox e outro(nao lembro)
           * install-package rhinomocks*/

          //Act

          var repo = MockRepository.GenerateStub <IFiliacaoRepository>();

          repo.Stub(s => s.ObterPorCpf(cliente.CPF.Numero)).Return(cliente);
          /*acima, ele vai no banco, buscar o CPF e não achar nada! Ai significará*/
          repo.Stub(s => s.ObterPorEmail(cliente.Email.endereco)).Return(cliente);

          var validationReturn = new ClienteAptoParaCadastroValidation(repo)
                                 .Validate(cliente);

          //Assert

          Assert.IsFalse(validationReturn.IsValid);
      }
Пример #12
0
        public void ClienteApto_Validation_True()
        {
            Cliente = new Cliente()
            {
                CPF   = "30390600822",
                Email = "*****@*****.**"
            };
            Cliente.Enderecos.Add(new Endereco());

            //vou gerar um mock de um repositorio (quem conecta no banco seria o IClienteRepository)
            //lembrando que não uso implementações e sim abstrações
            //**Um Stub é uma simulação do tipo
            var stupRepo = MockRepository.GenerateStub <IClienteRepository>();

            //como se estivesse pedindo para achar um cara com esse email e falo o resultado
            //vicio ele dizendo q vai retornar nulo
            stupRepo.Stub(s => s.ObterPorEmail(Cliente.Email)).Return(null);
            stupRepo.Stub(s => s.ObterPorCpf(Cliente.CPF)).Return(null);

            var cliValidation = new ClienteAptoParaCadastroValidation(stupRepo);

            Assert.IsTrue(cliValidation.Validate(Cliente).IsValid);
        }
        public void ClienteApto_Validation_False()
        {
            Cliente = new Cliente()
            {
                CPF = "3039060022",
                Email = "*****@*****.**"
            };

            var clienteResult = Cliente;

            // Mock: Stub - Fake - Mole
            var stubRepo = MockRepository.GenerateStub<IClienteRepository>();
            stubRepo.Stub(s => s.ObterPorCPF(Cliente.CPF)).Return(clienteResult);
            stubRepo.Stub(s => s.ObterPorEmail(Cliente.Email)).Return(clienteResult);

            var cliValidation = new ClienteAptoParaCadastroValidation(stubRepo);
            var result = cliValidation.Validate(Cliente);

            Assert.IsFalse(result.IsValid);
            Assert.IsTrue(result.Erros.Any(e => e.Message.Equals("CPF já cadastrado! Esqueceu a senha?")));
            Assert.IsTrue(result.Erros.Any(e => e.Message.Equals("Email já cadastrado! Esqueceu a senha?")));
            Assert.IsTrue(result.Erros.Any(e => e.Message.Equals("O cliente deve ter um endereço.")));
        }
        public void ClienteApto_IsValid_False()
        {
            // Arrange
            var cliente = new Cliente()
            {
                CPF    = "30390600822",
                Codigo = "*****@*****.**"
            };

            // Act
            var repo = MockRepository.GenerateStub <IClienteRepository>();

            repo.Stub(s => s.ObterPorCpf(cliente.CPF)).Return(cliente);
            repo.Stub(s => s.ObterPorCodigo(cliente.Codigo)).Return(cliente);

            var validationReturn = new ClienteAptoParaCadastroValidation(repo)
                                   .Validate(cliente);

            // Assert
            Assert.IsFalse(validationReturn.IsValid);
            Assert.IsTrue(validationReturn.Erros.Any(e => e.Message == "CPF já cadastrado! "));
            Assert.IsTrue(validationReturn.Erros.Any(e => e.Message == "E-mail já cadastrado! "));
        }
        public void ClienteApto_IsValid_True()
        {
            // Arrange
            var cliente = new Cliente
            {
                Cpf = new Cpf {
                    Numero = "82789431094"
                },
                Email = new Email {
                    Endereco = "*****@*****.**"
                },
                Enderecos = new List <Endereco>
                {
                    new Endereco
                    {
                        Logradouro  = "Alameda Barros",
                        Numero      = "676",
                        Complemento = "Apartamento 101",
                        Bairro      = "Santa Cecilia",
                        Cep         = "01232000"
                                      //Estado = "Sao Paulo",
                                      //Cidade = "Sao Paulo"
                    }
                }
            };

            // Act
            var repo = MockRepository.GenerateStub <IClienteRepository>();

            repo.Stub(s => s.ObterPorCpf(cliente.Cpf.Numero)).Return(null);
            repo.Stub(s => s.ObterPorEmail(cliente.Email.Endereco)).Return(null);

            var validationReturn = new ClienteAptoParaCadastroValidation(repo).Validate(cliente);

            // Assert
            Assert.IsTrue(validationReturn.IsValid);
        }