示例#1
0
        public void SeConsultarUmTipoContatoInexistentePorCodigoDeveRetornarNulo()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();

            var TipoContato = consultador.ConsultarTipoContato(99);

            TipoContato
            .Should().BeNull();
        }
示例#2
0
        public void SeConsultarTodosOsTiposDosContatosDeveEncontrarApenasOsRegistrosConfiguradosNaFactory()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();

            consultador.ConsultarTodosOsTiposDosContatos()
            .Should()
            .HaveCount(6);

            factory.Repositorio.Quantidade
            .Should().Be(0);
        }
示例#3
0
        public void SeConsultarTipoContatoExistentePorCodigoDeveEncontrar()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();

            var TipoContato = consultador.ConsultarTipoContato(1);

            TipoContato
            .Should().NotBeNull();

            TipoContato.Nome
            .Should().Be("Telefone");
        }
示例#4
0
        public void SeNaoExistirUmTipoContatoCadastradoDeveRetornarFalso()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();

            var tipoContato = new TipoContato()
            {
                Nome = "Fumaça"
            };

            consultador.ExisteTipoContatoCadastrado(tipoContato)
            .Should()
            .BeFalse();
        }
示例#5
0
        public void SeExistirUmTipoContatoCadastroDeveRetornarVerdadeiro()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();

            var tipoContato = new TipoContato()
            {
                Nome = "Telefone"
            };

            consultador.ExisteTipoContatoCadastrado(tipoContato)
            .Should()
            .BeTrue();
        }
示例#6
0
        public void SeCadastrarUmTipoContatoNaoDeveGerarErro()
        {
            var factory    = new TipoContatoFactory();
            var manutencao = factory.CriarManutencao();

            var tipoContato = new TipoContato()
            {
                Nome = "Fumaça"
            };

            Action cadastro = () => manutencao.Cadastrar(tipoContato);

            cadastro
            .ShouldNotThrow();
        }
示例#7
0
        public void SeCadastrarUmTipoContatoExistenteDeveGerarErro()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();
            var manutencao  = factory.CriarManutencao();

            var tipoContato = new TipoContato()
            {
                Nome = "Telefone"
            };

            Action cadastro = () => manutencao.Cadastrar(tipoContato);

            cadastro
            .ShouldThrow <Exception>()
            .WithMessage("Já existe um Tipo de Contato cadastrado com este nome!");
        }
示例#8
0
        public void SeNaoExistemContatosVinculadosDeveRetornarFalso()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();

            factory.ExistemContatosVinculados(existe: false);

            var tipoContato = new TipoContato()
            {
                Id   = 1,
                Nome = "Cuiabá"
            };

            consultador.ExistemContatosVinculados(tipoContato)
            .Should()
            .BeFalse();
        }
示例#9
0
        public void SeExistemContatosVinculadosDeveRetornarVerdadeiro()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();

            factory.ExistemContatosVinculados(existe: true);

            var tipoContato = new TipoContato()
            {
                Id   = 1,
                Nome = "Cuiabá"
            };

            consultador.ExistemContatosVinculados(tipoContato)
            .Should()
            .BeTrue();
        }
示例#10
0
        public void SeCadastrarUmTipoContatoDeveSerPossivelConsultalo()
        {
            var factory    = new TipoContatoFactory();
            var manutencao = factory.CriarManutencao();

            var tipoContato = new TipoContato()
            {
                Nome = "Fumaça"
            };

            factory.Repositorio.Quantidade
            .Should().Be(0);

            manutencao.Cadastrar(tipoContato);

            factory.Repositorio.Quantidade
            .Should().Be(1);
        }
示例#11
0
        public void SeExcluirUmTipoContatoExistenteComVinculoDeveGerarErro()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();
            var manutencao  = factory.CriarManutencao();

            factory.ExistemContatosVinculados(existe: true);

            var tipoContato = consultador.ConsultarTipoContato(1);

            tipoContato
            .Should().NotBeNull();

            Action exclusao = () => manutencao.Excluir(tipoContato);

            exclusao
            .ShouldThrow <Exception>()
            .WithMessage("Ainda existem contatos vinculados com este Tipo de Contato!");
        }
示例#12
0
        public void SeAlterarUmTipoContatoExistenteDeveEntrarNaListaDeAtualizacao()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();
            var manutencao  = factory.CriarManutencao();

            factory.Repositorio.Quantidade
            .Should().Be(0);

            var tipoContato = consultador.ConsultarTipoContato(1);

            tipoContato
            .Should().NotBeNull();

            tipoContato.Nome = "Fumaça";

            manutencao.Atualizar(tipoContato);

            factory.Repositorio.Quantidade
            .Should().Be(1);
        }
示例#13
0
        public void SeExcluirUmTipoContatoExistenteSemVinculoDeveEntrarNaListaDeAtualizacao()
        {
            var factory     = new TipoContatoFactory();
            var consultador = factory.CriarConsultador();
            var manutencao  = factory.CriarManutencao();

            factory.Repositorio.Quantidade
            .Should().Be(0);

            factory.ExistemContatosVinculados(existe: false);

            var tipoContato = consultador.ConsultarTipoContato(1);

            tipoContato
            .Should().NotBeNull();

            manutencao.Excluir(tipoContato);

            factory.Repositorio.Quantidade
            .Should().Be(0);
        }
示例#14
0
        public void SeAlterarUmTipoContatoExistenteSemExecutarAConsultaDeveEntrarNaListaDeAtualizacao()
        {
            var factory    = new TipoContatoFactory();
            var manutencao = factory.CriarManutencao();

            factory.Repositorio.Quantidade
            .Should().Be(0);

            var tipoContato = new TipoContato()
            {
                Id             = 1,
                Nome           = "Fumaça",
                EstadoEntidade = EstadosEntidade.Novo
            };

            manutencao.Atualizar(tipoContato);

            tipoContato.EstadoEntidade
            .Should().Be(EstadosEntidade.Modificado);

            factory.Repositorio.Quantidade
            .Should().Be(1);
        }