Objectivos

Adquirir a capacidade de utilizar do pacote JUnit para realização de testes.

Enunciado da Aula

Realização de testes sobre o mesmo enunciado da Aula Prática 3 ("Arabian Nights"), considerando-se as seguintes alterações:

Os métodos grantWish não retornam qualquer valor ( void ), mas lançam excepções (especializações de SomethingWrongWithGenieException):

  • NoMoreWishesException (no caso de um FriendlyGenie já ter realizado todos os desejos);
  • BadMoodException (no caso de um GrumpyGenie já ter realizado o primeiro desejo);
  • OopsException (lançada sempre que um RecyclableDemon realiza um desejo); e
  • TiredOhSoTiredException (no caso de um RecyclableDemon já ter sido reciclado).

As classes de teste devem pertencer ao pacote (package) arabiannights.tests e devem verificar o correcto comportamento dos génios.

O JUnit a utilizar é o da versão 3.8.x.

Os ficheiros em anexo contêm exemplos de utilização.

Actividade

  1. Resolução do enunciado da aula.