public void FuncionarioFactory_Criar_DeveRetornarTipoFuncionario() { // Arrange & Act var funcionario = FunctionalFactory.Criar("Eduardo", 10000); // Assert Assert.IsType <Funcionario>(funcionario); }
public void FuncionarioFactory_Criar_DeveRetornarTipoDerivadoPessoa() { // Arrange & Act var funcionario = FunctionalFactory.Criar("Eduardo", 10000); // Assert Assert.IsAssignableFrom <Pessoa>(funcionario); }
public void Funcionario_Habilidades_JuniorNaoDevePossuirHabilidadeAvancada() { // Arrange & Act var funcionario = FunctionalFactory.Criar("Eduardo", 10000); // Assert Assert.DoesNotContain("Microservies", funcionario.Habilidades); }
public void Funcionario_Habilidades_JuniorDevePossuirHabilidadeBasica() { // Arrange & Act var funcionario = FunctionalFactory.Criar("Eduardo", 10000); // Assert Assert.Contains("OOP", funcionario.Habilidades); }
public void Funcionario_DeveRetornarErroSalarioInferiorPermitido() { // Arrange & Act & Assert var exception = Assert.Throws <Exception>(() => FunctionalFactory.Criar("Eduardo", 250)); Assert.Equal("Salario inferior ao permitido", exception.Message); }
public void Funcionario_Habilidades_NaoDevePossuirHabilidadesVazias() { // Arrange & Act var funcionario = FunctionalFactory.Criar("Eduardo", 10000); // Assert Assert.All(funcionario.Habilidades, habilidade => Assert.False(string.IsNullOrWhiteSpace(habilidade))); }
public void Funcionario_Habilidades_SeniorDevePossuirTodasHabilidades() { // Arrange & Act var funcionario = FunctionalFactory.Criar("Eduardo", 10000); var habilidadesBasicas = new[] { "Lógica de Programação", "OOP", "Testes", "Microservices" }; // Assert Assert.Equal(habilidadesBasicas, funcionario.Habilidades); }