1
resposta

Dúvidas sobre o código

A primeira é que pelo que entendi, o método calcularBonus(), na verdade não zera o valor do bônus se o salário for muito alto, e sim se o valor do salário multiplicado por 0.10 é muito alto. O que são duas coisas diferentes. Se essa interpretação estiver errada, me expliquem novamente por favor.

A outra é curiosidade. Como o funcionário foi criado na passagem de parâmetro, como faria para acessar esse funcionário depois?

service.calcularBonus (new Funcionario("Rodrigo", LocalDate.now(), new BigDecimal("25000")));
1 resposta

Oi Samir,

A regra é: o valor do bonus não pode ser superior a 1000 reais. Para funcionários cujo salário seja superior a R$10.000,00 o bonus será zero então, pois 10% desse valor passaria dos R$1.000,00 de limite de bonus.

No teste não foi necessário utilizar o objeto funcionário, e por isso ele foi instanciado diretamente no método, mas você poderia guardar numa variável:

Funcionario funcionario = new Funcionario("Rodrigo", LocalDate.now(), new BigDecimal("25000"));
service.calcularBonus (funcionario);