No JUnit 5 a anotation @Test(expected=RuntimeException.class) não funciona. Assim sendo o teste pode ser escrito assim para testar apenas a exceção:
@Test
public void naoDeveAvaliarLeiloesSemNenhumLanceDado() {
Leilao leilao = new CriadorDeLeilao()
.para("Playstation 3 Novo")
.constroi();
assertThrows(RuntimeException.class, () -> leiloeiro.avalia(leilao));
}
ou para assim para validar também a mensagem de erro:
@Test
public void naoDeveAvaliarLeiloesSemNenhumLanceDado() {
Leilao leilao = new CriadorDeLeilao()
.para("Playstation 3 Novo")
.constroi();
RuntimeException runtimeException = assertThrows(RuntimeException.class, () -> leiloeiro.avalia(leilao));
assertTrue(runtimeException.getMessage().contains("Não é possível avaliar um leilão sem lances!"));
}