Exemplo n.º 1
0
        public void FuncionarioFactory_Criar_DeveRetornarTipoDerivadoPessoa()
        {
            // Arrange & Act
            var funcionario = FuncionarioFactory.Criar("Eduardo", 10000);

            // Assert
            //Verifica se o tipo da variável funcionário herda do tipo Pessoa
            Assert.IsAssignableFrom <Pessoa>(funcionario);
        }
        public void Funcionario_Habilidades_NaoDevePossuirHabilidadesVazias()
        {
            // Arrange & Act
            var funcionario = FuncionarioFactory.Criar("Eduardo", 10000);

            // Assert
            //Valida se todos os itens da coleção a habilidade não esteja nula ou vazia
            //O Segundo parâmetro é uma action que será aplicada para todos os itens da collection
            Assert.All(funcionario.Habilidades, habilidade => Assert.False(string.IsNullOrWhiteSpace(habilidade)));
        }
        public void Funcionario_Habilidades_NaoDevePossuirHabilidadesVazias()
        {
            // Arrange & Act
            var funcionarioJunior = FuncionarioFactory.Criar("Masanori", 1000);
            var funcionarioPleno  = FuncionarioFactory.Criar("Masanori", 2000);
            var funcionarioSenior = FuncionarioFactory.Criar("Masanori", 8000);

            // Asserts
            Assert.All(funcionarioJunior.Habilidades, habilidade => Assert.False(string.IsNullOrEmpty(habilidade)));
            Assert.All(funcionarioPleno.Habilidades, habilidade => Assert.False(string.IsNullOrEmpty(habilidade)));
            Assert.All(funcionarioSenior.Habilidades, habilidade => Assert.False(string.IsNullOrEmpty(habilidade)));
        }
Exemplo n.º 4
0
        public void Funcionario_Apelido_NaoDeveTerApelido()
        {
            //Arrange
            var funcionario = FuncionarioFactory.Criar(nome: "Geovane Godoi", salario: 1000);

            //Assert Null
            Assert.Null(funcionario.Apelido);

            //Assert Bool
            Assert.True(string.IsNullOrEmpty(funcionario.Apelido));
            Assert.False(funcionario.Apelido?.Length > 0);
        }
        public void Funcionario_Habilidades_SeniorDevePossuirTodasHabilidadesAvancadas()
        {
            // Arrange & Act
            var funcionario = FuncionarioFactory.Criar("Masanori", 15000);

            var habilidades = new[]
            {
                "Lógica de Programação",
                "OOP",
                "Testes",
                "Microservices"
            };

            // Asserts
            Assert.Equal(habilidades, funcionario.Habilidades);
        }
        public void Funcionario_Habilidades_SeniorDevePossuirTodasHabilidades()
        {
            // Arrange - Act
            var funcionario = FuncionarioFactory.Criar("Lorem", 10000);

            var habilidades = new[]
            {
                "Logica de Programacao",
                "OOP",
                "Testes",
                "Microservices"
            };

            //Assert
            Assert.Equal(habilidades, funcionario.Habilidades);
        }
        public void Funcionario_Habilidades_SeniorDevePossuirTodasHabilidades()
        {
            // Assert & Act
            var funcionario = FuncionarioFactory.Criar("Wellington", 15000);

            var habilidadesBasicas = new[]
            {
                "Lógica de Programação",
                "OOP",
                "Testes",
                "Microservices"
            };

            //Assert
            Assert.Equal(habilidadesBasicas, funcionario.Habilidades);
        }
        public void Funcionario_Habilidades_SeniorDevePossuirTodasHabilidades()
        {
            //Arrange & Act
            var funcionario = FuncionarioFactory.Criar(nome: "Geovane", nivel: NivelProfissional.Senior);

            var todasHabilidades = new []
            {
                "Lógica de Programação",
                "OOP",
                "Testes",
                "Microservices"
            };

            //Assert
            Assert.Equal(expected: todasHabilidades, funcionario.Habilidades);
        }
        public void Funcionario_Habilidades_SeniorDevePossuirTodasHabilidades()
        {
            // Arrange & Act
            var funcionario = FuncionarioFactory.Criar("Eduardo", 15000);

            var habilidadesBasicas = new []
            {
                "Lógica de Programação",
                "OOP",
                "Testes",
                "Microservices"
            };

            // Assert
            //Valida se as duas coleções são iguais
            Assert.Equal(habilidadesBasicas, funcionario.Habilidades);
        }
Exemplo n.º 10
0
        public void Funcionario_Salario_FaixasSalariaisDevemRespeitarNivelProfissional(double salario)
        {
            //Arrange & Act
            var funcionario = FuncionarioFactory.Criar(nome: "Geovane", salario: salario);

            //Assert
            if (funcionario.NivelProfissional == NivelProfissional.Junior)
            {
                Assert.InRange(funcionario.Salario, low: 500, high: 1999);
            }

            if (funcionario.NivelProfissional == NivelProfissional.Pleno)
            {
                Assert.InRange(funcionario.Salario, low: 2000, high: 7999);
            }

            if (funcionario.NivelProfissional == NivelProfissional.Senior)
            {
                Assert.InRange(funcionario.Salario, low: 8000, high: double.MaxValue);
            }

            Assert.NotInRange(salario, low: 0, high: 499);
        }
Exemplo n.º 11
0
        public void FuncionarioFactory_Criar_DeveRetornarTipoDerivadoPessoa()
        {
            var funcionario = FuncionarioFactory.Criar("Wellington", 10000);

            Assert.IsAssignableFrom <Pessoa>(funcionario);
        }