Beispiel #1
0
        public void NovoCadastro_DadosValidos_ExpectedTrue()
        {
            using var context = CMTestsContext.SqlLiteInMemoryContext();
            var iuow           = new UnitOfWork(context);
            var clienteService = new ClienteService(iuow);

            var genero = Gender.Female;
            var dto    = GetCliente(genero, TipoSexo.Feminino, new DateTime(2000, 05, 01));

            dto.Endereco = GetEndereco(dto, "001");

            var retorno = clienteService.Criar(dto);
            var cliente = iuow.ClienteRepository.GetAll().FirstOrDefault();

            Assert.IsNotNull(dto.Id);
            Assert.AreEqual(dto.Nome, cliente.Nome);
            Assert.AreEqual(dto.Sobrenome, cliente.Sobrenome);
            Assert.AreEqual(dto.DataNascimento, cliente.DataNascimento);
            Assert.AreEqual(dto.TipoSexo, cliente.TipoSexo.ToString());
            Assert.AreEqual(dto.Email, cliente.Email);
            Assert.AreEqual(dto.Telefone, cliente.Telefone);

            var endereco = cliente.Enderecos.FirstOrDefault();

            Assert.AreEqual(dto.Endereco.CEP, endereco.CEP);
            Assert.AreEqual(dto.Endereco.Logradouro, endereco.Logradouro);
            Assert.AreEqual(dto.Endereco.Numero, endereco.Numero);
            Assert.AreEqual(dto.Endereco.Bairro, endereco.Bairro);
            Assert.AreEqual(dto.Endereco.Complemento, endereco.Complemento);
            Assert.AreEqual(dto.Endereco.Localidade, endereco.Localidade);
            Assert.AreEqual(dto.Endereco.Uf, endereco.Uf);
            Assert.AreEqual(endereco.ClienteId, cliente.Id);
        }
Beispiel #2
0
        public void ExcluirCliente_ClienteInexistente_ExpectedException()
        {
            // Arrange
            using var context = CMTestsContext.SqlLiteInMemoryContext();
            var iuow           = new UnitOfWork(context);
            var clienteService = new ClienteService(iuow);

            //Assert
            Assert.ThrowsException <Exception>(() =>
                                               clienteService.Exlcuir(new ClienteDTO.Excluir(Guid.NewGuid())),
                                               "Exceção não lançada para cliente inexistente");
        }
Beispiel #3
0
        public void ExcluirCliente_ClienteExistente_ExpectedTrue()
        {
            // Arrange
            using var context = CMTestsContext.SqlLiteInMemoryContext();
            var iuow           = new UnitOfWork(context);
            var clienteService = new ClienteService(iuow);
            var genero         = Gender.Male;
            var dto            = GetCliente(genero, TipoSexo.Masculino, new DateTime(1990, 10, 10));

            dto.Endereco = GetEndereco(dto, "001");

            // Act
            clienteService.Criar(dto);
            var clienteId1 = iuow.ClienteRepository.GetAll().FirstOrDefault().Id;

            clienteService.Exlcuir(new ClienteDTO.Excluir(clienteId1));

            //Assert
            Assert.IsNotNull(iuow.ClienteRepository.GetById(clienteId1));
            Assert.IsNull(iuow.EnderecoRepository.GetAllByClienteId(clienteId1));
        }
Beispiel #4
0
        public void AlterarDados_DadosValidos_ExpectedTrue()
        {
            // Arrange
            using var context = CMTestsContext.SqlLiteInMemoryContext();
            var iuow           = new UnitOfWork(context);
            var clienteService = new ClienteService(iuow);
            var genero         = Gender.Male;
            var dto            = GetCliente(genero, TipoSexo.Masculino, new DateTime(1990, 10, 10));

            dto.Endereco = GetEndereco(dto, "001");

            //Act
            var retorno = clienteService.Criar(dto);
            var cliente = iuow.ClienteRepository.GetAll().FirstOrDefault();

            dto          = GetCliente(genero, TipoSexo.Outro, new DateTime(1190, 10, 02));
            dto.Endereco = GetEndereco(dto, "555", "87200000", "PR");
            retorno      = clienteService.Criar(dto);

            // Assert
            Assert.IsNotNull(dto.Id);
            Assert.AreNotEqual(dto.Nome, cliente.Nome);
            Assert.AreNotEqual(dto.Sobrenome, cliente.Sobrenome);
            Assert.AreNotEqual(dto.DataNascimento, cliente.DataNascimento);
            Assert.AreNotEqual(dto.TipoSexo, cliente.TipoSexo.ToString());
            Assert.AreNotEqual(dto.Email, cliente.Email);
            Assert.AreNotEqual(dto.Telefone, cliente.Telefone);

            var endereco = cliente.Enderecos.FirstOrDefault();

            Assert.AreNotEqual(dto.Endereco.CEP, endereco.CEP);
            Assert.AreNotEqual(dto.Endereco.Logradouro, endereco.Logradouro);
            Assert.AreNotEqual(dto.Endereco.Numero, endereco.Numero);
            Assert.AreNotEqual(dto.Endereco.Bairro, endereco.Bairro);
            Assert.AreNotEqual(dto.Endereco.Complemento, endereco.Complemento);
            Assert.AreNotEqual(dto.Endereco.Localidade, endereco.Localidade);
            Assert.AreNotEqual(dto.Endereco.Uf, endereco.Uf);
            Assert.AreEqual(endereco.ClienteId, cliente.Id);
        }
Beispiel #5
0
        public void GetById_ClienteExistente_ExpectedTrue()
        {
            // Arrange
            using var context = CMTestsContext.SqlLiteInMemoryContext();
            var iuow           = new UnitOfWork(context);
            var clienteService = new ClienteService(iuow);
            var genero         = Gender.Male;
            var dto            = GetCliente(genero, TipoSexo.Masculino, new DateTime(1980, 10, 15));

            dto.Endereco = GetEndereco(dto, "444");

            // Act
            clienteService.Criar(dto);
            var clienteId = iuow.ClienteRepository.GetAll().FirstOrDefault().Id;
            var cliente   = clienteService.GetById(clienteId);

            //Assert
            Assert.IsNotNull(dto.Id);
            Assert.AreEqual(dto.Nome, cliente.Nome);
            Assert.AreEqual(dto.Sobrenome, cliente.Sobrenome);
            Assert.AreEqual(dto.DataNascimento, cliente.DataNascimento);
            Assert.AreEqual(dto.TipoSexo, cliente.TipoSexo.ToString());
            Assert.AreEqual(dto.Email, cliente.Email);
            Assert.AreEqual(dto.Telefone, cliente.Telefone);

            var endereco = cliente.Endereco;

            Assert.AreEqual(dto.Endereco.CEP, endereco.CEP);
            Assert.AreEqual(dto.Endereco.Logradouro, endereco.Logradouro);
            Assert.AreEqual(dto.Endereco.Numero, endereco.Numero);
            Assert.AreEqual(dto.Endereco.Bairro, endereco.Bairro);
            Assert.AreEqual(dto.Endereco.Complemento, endereco.Complemento);
            Assert.AreEqual(dto.Endereco.Localidade, endereco.Localidade);
            Assert.AreEqual(dto.Endereco.Uf, endereco.Uf);
            Assert.AreEqual(endereco.ClienteId, cliente.Id);
        }