Caso eu tenha um método void que lança uma exception (Exemplo simples apenas didático abaixo), como eu poderia testar ??? Fiquei perdido pois dentro do método temos uma regra e não consegui chegar nela usando Mocks.
@Autowired
private PessoaRepository pessoaRepo;
public void save(Pessoa pessoa) throws Exception {
if (pessoa.getIdade() > 30) {
throw new Exception("Erro ao Salvar dados");
}
pessoaRepo.save(pessoa);
}
Exemplo do Teste:
try {
Mockito.doThrow(new Exception()).doNothing().when(pessoaService).save(pessoa);
Mockito.verifyNoInteractions(pessoaRepo.save(pessoa));
} catch (Exception e) {
}