Capítulo: Testes automatizados
- Java 21 : Utilizaremos a versão LTS mais recente do Java para tirar vantagem das últimas inovações que essa linguagem robusta e amplamente utilizada oferece;
- JUnit 5.8.1 : Usamos o Junit 5.8 para fazer os testes unitários
Um financiamento possui três dados:
- totalAmont: valor total de dinheiro financiado
- income: renda mensal do cliente que está financiando
- months: número de meses do financiamento
E dois métodos:
- entry: entrada do financiamento, igual a 20% do valor total
- quota: prestação mensal do financiamento (sem juros)
Há ainda uma regra: o valor da prestação não pode ser maior que metade da renda mensal do cliente. A seguir alguns exemplos de financiamentos para ajudar a entender a regra:
Exemplo 1: { totalAmount: 100000, income: 2000, months: 20 }
Este exemplo é INVÁLIDO porque com esses dados a entrada seria 20000 e a prestação seria 4000.
Porém a prestação não pode passar de 1000, que é a metade da renda do cliente.
Exemplo 2: { totalAmount: 100000, income: 2000, months: 80 }
Já este exemplo é VÁLIDO porque a entrada seria 20000 e a prestação seria 1000.
Neste caso, a prestação é menor ou igual a metade da renda do cliente, satisfazendo a regra.
- Deve criar o objeto com os dados corretos quando os dados forem válidos
- Deve lançar IllegalArgumentException quando os dados não forem válidos
- Deve atualizar o valor quando os dados forem válidos
- Deve lançar IllegalArgumentException quando os dados não forem válidos
- Deve atualizar o valor quando os dados forem válidos
- Deve lançar IllegalArgumentException quando os dados não forem válidos
- Deve atualizar o valor quando os dados forem válidos
- Deve lançar IllegalArgumentException quando os dados não forem válidos
- Deve calcular corretamente o valor da entrada
- Deve calcular corretamente o valor da prestação