*** COMPILING IN ef/checked-out/075
                           A-01-32-M-ok.in                           
Running: Running: TEST PASSED!
                           A-01-33-M-ok.in                           
Running: Running: *** expected/A-01-33-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-01-33-M-ok.out	Sat Oct 26 20:13:49 2024
      ZONE  1      
*** 19,29 ****
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: HABITAT|H1|Aldeia dos Macacos|20|3
- ÁRVORE|T1|Pinheiro 1|5|20|PERENE|GERARFOLHAS
- ÁRVORE|T2|Oliveira|1200|10|PERENE|GERARFOLHAS
- ÁRVORE|T4|Pinheiro 4|60|20|PERENE|GERARFOLHAS
  HABITAT|H2|Aldeia dos Ursos|20|1
- ÁRVORE|T6|Figueira|5|10|CADUCA|GERARFOLHAS
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
--- 19,25 ----
output differs from expected
                           A-01-34-M-ok.in                           
Running: Running: *** expected/A-01-34-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-01-34-M-ok.out	Sat Oct 26 20:13:49 2024
      ZONE  1      
*** 47,53 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Guardar antes de fechar? Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 47,53 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
output differs from expected
                           A-01-35-M-ok.in                           
Running: Running: *** expected/A-01-35-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-01-35-M-ok.out	Sat Oct 26 20:13:49 2024
      ZONE  1      
*** 47,53 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Guardar antes de fechar? Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 47,53 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 59,64 ****
--- 59,65 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
      ZONE  3      
*** 104,110 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 105,111 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  4      
*** 116,122 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 117,124 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  5      
*** 128,131 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 130,133 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-01-36-M-ok.in                           
Running: Running: *** expected/A-01-36-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-01-36-M-ok.out	Sat Oct 26 20:13:49 2024
      ZONE  1      
*** 48,54 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 48,54 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 60,65 ****
--- 60,66 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
output differs from expected
                           A-02-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-02-02-M-ok.in                           
Running: Running: TEST PASSED!
                           A-02-03-M-ok.in                           
Running: Running: TEST PASSED!
                           A-02-04-M-ok.in                           
Running: Running: TEST PASSED!
                           A-02-05-M-ok.in                           
Running: Running: TEST PASSED!
                           A-02-06-M-ok.in                           
Running: Running: *** expected/A-02-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-02-06-M-ok.out	Sat Oct 26 20:13:50 2024
      ZONE  1      
*** 19,30 ****
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: HABITAT|h1|nome2|12|2
- ÁRVORE|T1|Pinheiro 4|60|20|PERENE|GERARFOLHAS
- ÁRVORE|T3|Figueira|5|10|CADUCA|GERARFOLHAS
  HABITAT|h2|outro nome|122|0
  HABITAT|h3|nome1|1222|2
- ÁRVORE|T2|Oliveira|120|10|PERENE|GERARFOLHAS
- ÁRVORE|T4|Plátano|30|20|CADUCA|GERARFOLHAS
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
--- 19,26 ----
output differs from expected
                           A-02-07-M-ok.in                           
Running: Running: *** expected/A-02-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-02-07-M-ok.out	Sat Oct 26 20:13:50 2024
      ZONE  1      
*** 19,28 ****
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: HABITAT|h1|nome2|12|4
- ÁRVORE|T1|Pinheiro 4|60|20|PERENE|GERARFOLHAS
- ÁRVORE|T2|Oliveira|120|10|PERENE|GERARFOLHAS
- ÁRVORE|T3|Figueira|5|10|CADUCA|GERARFOLHAS
- ÁRVORE|T4|Plátano|30|20|CADUCA|GERARFOLHAS
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
--- 19,24 ----
output differs from expected
                           A-03-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-03-02-M-ok.in                           
Running: Running: TEST PASSED!
                           A-03-03-M-ok.in                           
Running: Running: TEST PASSED!
                           A-03-04-M-ok.in                           
Running: Running: *** expected/A-03-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-03-04-M-ok.out	Sat Oct 26 20:13:50 2024
      ZONE  1      
*** 26,33 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Nome do habitat: Área do habitat: Registar habitat: Operação inválida: O habitat 'aE' já existe.
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Nome do habitat: Área do habitat: Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 36,41 ****
--- 35,41 ----
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: HABITAT|Ae|novo|230|0
+ HABITAT|aE|novissimo|300|0
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
output differs from expected
                           A-04-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-04-02-M-ok.in                           
Running: Running: TEST PASSED!
                           A-04-03-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-04-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-04-03-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 16,108 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Área do habitat: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|AR1|Aldeia dos Macacos|20|0
! HABITAT|AR2|Lago dos Pinguins|220|0
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 74
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 74
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-05-01-M-ok.in                           
Running: Running: *** expected/A-05-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-05-01-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Alterar influência de habitat sobre espécie: Operação inválida: O habitat 'H1' não existe.
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Alterar influência de habitat sobre espécie: Operação inválida: O habitat 'H1' não existe.
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
      ZONE  2      
*** 27,41 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Alterar influência de habitat sobre espécie: Operação inválida: A espécie 'C3' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 27,35 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-05-02-M-ok.in                           
Running: Running: *** expected/A-05-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-05-02-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 38,41 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 38,41 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-05-03-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-05-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-05-03-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 16,471 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 44
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 44
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 4
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 4
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-06-01-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
execution failed
*** expected/A-06-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-06-01-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 10,39 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: 
\ No newline at end of file
--- 10,13 ----
output differs from expected
                           A-06-02-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
execution failed
*** expected/A-06-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-06-02-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 10,103 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 3
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 0
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: 
\ No newline at end of file
--- 10,13 ----
output differs from expected
                           A-06-03-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
execution failed
*** expected/A-06-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-06-03-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 10,28 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
  Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 10,16 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Abrir ficheiro: Operação inválida: Problema ao abrir ficheiro: ap03.dat (No such file or directory)
  Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-07-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-07-02-M-ok.in                           
Running: Running: TEST PASSED!
                           A-07-03-M-ok.in                           
Running: Running: TEST PASSED!
                           A-07-04-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.ordinal()" because the return value of "hva.core.DeciduousTree.getSeason()" is null
	at hva.core.DeciduousTree.getBioCycle(DeciduousTree.java:12)
	at hva.core.Tree.toString(Tree.java:44)
	at hva.app.habitat.DoShowAllTreesInHabitat.execute(DoShowAllTreesInHabitat.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenHabitatsMenu.execute(DoOpenHabitatsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
execution failed
*** expected/A-07-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-04-M-ok.out	Sat Oct 26 20:13:51 2024
      ZONE  1      
*** 26,33 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a1|nome34|1|2|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 35,59 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|a1|nome34|1|2|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 34,37 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: 
\ No newline at end of file
output differs from expected
                           A-07-05-M-ok.in                           
Running: Running: TEST PASSED!
                           A-07-06-M-ok.in                           
Running: Running: *** expected/A-07-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-06-M-ok.out	Sat Oct 26 20:13:52 2024
      ZONE  1      
*** 18,25 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Plantar árvore: Operação inválida: A árvore 't1' já existe.
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
output differs from expected
                           A-07-07-M-ok.in                           
Running: Running: *** expected/A-07-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-07-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 18,42 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Tipo de árvore: (CADUCA ou PERENE) Tipo de árvore: (CADUCA ou PERENE) Tipo de árvore: (CADUCA ou PERENE) Tipo de árvore: (CADUCA ou PERENE) Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|t4|nome|12|1|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 18,21 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) 
\ No newline at end of file
output differs from expected
                           A-07-08-M-ok.in                           
Running: Running: TEST PASSED!
                           A-07-09-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.ordinal()" because the return value of "hva.core.EvergreenTree.getSeason()" is null
	at hva.core.EvergreenTree.getBioCycle(EvergreenTree.java:12)
	at hva.core.Tree.toString(Tree.java:44)
	at hva.app.habitat.DoShowAllTreesInHabitat.execute(DoShowAllTreesInHabitat.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenHabitatsMenu.execute(DoOpenHabitatsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-09-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-09-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 18,25 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|B1|b1|2|3|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 27,34 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|P1|p1|3|4|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 36,43 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|R1|r1|6|7|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 34,40 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  4      
*** 45,52 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|X1|x1|10|12|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 42,48 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  5      
*** 54,82 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|A1|Pinheiro 1|5|20|PERENE|GERARFOLHAS
! ÁRVORE|B1|b1|2|3|CADUCA|GERARFOLHAS
! ÁRVORE|P1|p1|3|4|PERENE|GERARFOLHAS
! ÁRVORE|R1|r1|6|7|PERENE|GERARFOLHAS
! ÁRVORE|X1|x1|10|12|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 50,53 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: 
\ No newline at end of file
output differs from expected
                           A-07-10-M-ok.in                           
Running: Running: *** expected/A-07-10-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-10-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 18,25 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|B1|b1|2|3|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 27,34 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|P1|p1|3|4|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 36,43 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|R1|r1|6|7|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 34,40 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  4      
*** 45,52 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|X1|x1|10|12|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 42,48 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  5      
*** 55,65 ****
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: HABITAT|h1|nome2|12|5
- ÁRVORE|A1|Pinheiro 1|5|20|PERENE|GERARFOLHAS
- ÁRVORE|B1|b1|2|3|CADUCA|GERARFOLHAS
- ÁRVORE|P1|p1|3|4|PERENE|GERARFOLHAS
- ÁRVORE|R1|r1|6|7|PERENE|GERARFOLHAS
- ÁRVORE|X1|x1|10|12|CADUCA|GERARFOLHAS
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
--- 51,56 ----
output differs from expected
                           A-07-11-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.ordinal()" because the return value of "hva.core.EvergreenTree.getSeason()" is null
	at hva.core.EvergreenTree.getBioCycle(EvergreenTree.java:12)
	at hva.core.Tree.toString(Tree.java:44)
	at hva.app.habitat.DoShowAllTreesInHabitat.execute(DoShowAllTreesInHabitat.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenHabitatsMenu.execute(DoOpenHabitatsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-11-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-11-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 18,25 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|B1|b1|2|3|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 27,34 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|X1|x1|3|4|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 36,43 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|A1|a1|6|7|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 34,40 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  4      
*** 45,52 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|R1|r1|10|12|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 42,48 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  5      
*** 54,96 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|A1|a1|6|7|PERENE|GERARFOLHAS
! ÁRVORE|B1|b1|2|3|CADUCA|GERARFOLHAS
! ÁRVORE|P1|Pinheiro 1|5|20|PERENE|GERARFOLHAS
! ÁRVORE|R1|r1|10|12|CADUCA|GERARFOLHAS
! ÁRVORE|X1|x1|3|4|PERENE|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|5
! ÁRVORE|A1|a1|6|7|PERENE|GERARFOLHAS
! ÁRVORE|B1|b1|2|3|CADUCA|GERARFOLHAS
! ÁRVORE|P1|Pinheiro 1|5|20|PERENE|GERARFOLHAS
! ÁRVORE|R1|r1|10|12|CADUCA|GERARFOLHAS
! ÁRVORE|X1|x1|3|4|PERENE|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 50,53 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: 
\ No newline at end of file
output differs from expected
                           A-07-12-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-12-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-12-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 18,151 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|t1|t1|1|1|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|t1|t1|1|1|CADUCA|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|t1|t1|1|1|CADUCA|LARGARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|t1|t1|1|1|CADUCA|SEMFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
output differs from expected
                           A-07-13-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-13-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-13-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 18,151 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|t1|t1|1|1|PERENE|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|t1|t1|1|1|PERENE|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|t1|t1|1|1|PERENE|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|t1|t1|1|1|PERENE|LARGARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
output differs from expected
                           A-07-14-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-14-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-14-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 38,151 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a1|a1|1|1|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a2|a2|2|3|PERENE|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a4|a4|4|3|CADUCA|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|a1|a1|1|1|CADUCA|COMFOLHAS
! ÁRVORE|a2|a2|2|3|PERENE|COMFOLHAS
! ÁRVORE|a4|a4|4|3|CADUCA|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|a1|a1|1|1|CADUCA|LARGARFOLHAS
! ÁRVORE|a2|a2|2|3|PERENE|COMFOLHAS
! ÁRVORE|a4|a4|4|3|CADUCA|LARGARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 38,44 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
output differs from expected
                           A-07-15-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-15-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-15-M-ok.out	Sat Oct 26 20:14:21 2024
      ZONE  1      
*** 18,137 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a1|a1|1|1|PERENE|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|1
! ÁRVORE|a1|a1|1|1|PERENE|LARGARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 0
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|1
! ÁRVORE|a1|a1|2|1|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
output differs from expected
                           A-07-16-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-16-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-16-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 18,25 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a1|a1|1|3|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 27,34 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a2|a2|10|4|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 37,161 ****
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: HABITAT|h1|nome2|12|1
- ÁRVORE|a2|a2|10|4|PERENE|GERARFOLHAS
  HABITAT|h2|outro nome|122|1
- ÁRVORE|a1|a1|1|3|CADUCA|GERARFOLHAS
- Gestão de Habitats
- 1 - Visualizar todos os habitats
- 2 - Registar habitat
- 3 - Alterar área de habitat
- 4 - Alterar influência de habitat sobre espécie
- 5 - Plantar árvore
- 6 - Mostrar árvores de habitat
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 3
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Gestão de Habitats
- 1 - Visualizar todos os habitats
- 2 - Registar habitat
- 3 - Alterar área de habitat
- 4 - Alterar influência de habitat sobre espécie
- 5 - Plantar árvore
- 6 - Mostrar árvores de habitat
- 0 - Sair
- Escolha uma opção: HABITAT|h1|nome2|12|1
- ÁRVORE|a2|a2|10|4|PERENE|LARGARFOLHAS
- HABITAT|h2|outro nome|122|1
- ÁRVORE|a1|a1|1|3|CADUCA|SEMFOLHAS
- Gestão de Habitats
- 1 - Visualizar todos os habitats
- 2 - Registar habitat
- 3 - Alterar área de habitat
- 4 - Alterar influência de habitat sobre espécie
- 5 - Plantar árvore
- 6 - Mostrar árvores de habitat
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 0
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Gestão de Habitats
- 1 - Visualizar todos os habitats
- 2 - Registar habitat
- 3 - Alterar área de habitat
- 4 - Alterar influência de habitat sobre espécie
- 5 - Plantar árvore
- 6 - Mostrar árvores de habitat
- 0 - Sair
- Escolha uma opção: HABITAT|h1|nome2|12|1
- ÁRVORE|a2|a2|11|4|PERENE|GERARFOLHAS
- HABITAT|h2|outro nome|122|1
- ÁRVORE|a1|a1|2|3|CADUCA|GERARFOLHAS
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
--- 35,41 ----
output differs from expected
                           A-07-17-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-17-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-17-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 18,208 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a1|a1|1|3|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a2|a2|10|4|PERENE|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|1
! ÁRVORE|a2|a2|10|4|PERENE|COMFOLHAS
! HABITAT|h2|outro nome|122|1
! ÁRVORE|a1|a1|1|3|CADUCA|LARGARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 0
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|1
! ÁRVORE|a2|a2|10|4|PERENE|COMFOLHAS
! HABITAT|h2|outro nome|122|1
! ÁRVORE|a1|a1|2|3|CADUCA|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|1
! ÁRVORE|a2|a2|11|4|PERENE|COMFOLHAS
! HABITAT|h2|outro nome|122|1
! ÁRVORE|a1|a1|2|3|CADUCA|LARGARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
output differs from expected
                           A-07-18-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-18-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-18-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 18,25 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a1|a1|1|3|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 27,34 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|a2|a2|10|4|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 37,45 ****
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: HABITAT|h1|nome2|12|1
- ÁRVORE|a2|a2|10|4|PERENE|GERARFOLHAS
  HABITAT|h2|outro nome|122|1
- ÁRVORE|a1|a1|1|3|CADUCA|GERARFOLHAS
  Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
--- 35,41 ----
      ZONE  4      
*** 49,92 ****
  6 - Mostrar árvores de habitat
  0 - Sair
  Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 45,50 ----
output differs from expected
                           A-07-19-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
execution failed
*** expected/A-07-19-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-19-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 10,60 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|1
! ÁRVORE|a2|a2|10|4|PERENE|COMFOLHAS
! HABITAT|h2|outro nome|122|1
! ÁRVORE|a1|a1|1|3|CADUCA|LARGARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
  Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 10,16 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Abrir ficheiro: Operação inválida: Problema ao abrir ficheiro: ap04.dat (No such file or directory)
  Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 75,130 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
- Escolha uma opção: HABITAT|h1|nome2|12|1
- ÁRVORE|a2|a2|10|4|PERENE|LARGARFOLHAS
- HABITAT|h2|outro nome|122|1
- ÁRVORE|a1|a1|1|3|CADUCA|SEMFOLHAS
- Gestão de Habitats
- 1 - Visualizar todos os habitats
- 2 - Registar habitat
- 3 - Alterar área de habitat
- 4 - Alterar influência de habitat sobre espécie
- 5 - Plantar árvore
- 6 - Mostrar árvores de habitat
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 0
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: Gestão de Habitats
- 1 - Visualizar todos os habitats
- 2 - Registar habitat
- 3 - Alterar área de habitat
- 4 - Alterar influência de habitat sobre espécie
- 5 - Plantar árvore
- 6 - Mostrar árvores de habitat
- 0 - Sair
- Escolha uma opção: HABITAT|h1|nome2|12|1
- ÁRVORE|a2|a2|11|4|PERENE|GERARFOLHAS
- HABITAT|h2|outro nome|122|1
- ÁRVORE|a1|a1|2|3|CADUCA|GERARFOLHAS
- Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 31,37 ----
output differs from expected
                           A-07-20-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.ordinal()" because the return value of "hva.core.EvergreenTree.getSeason()" is null
	at hva.core.EvergreenTree.getBioCycle(EvergreenTree.java:12)
	at hva.core.Tree.toString(Tree.java:44)
	at hva.app.habitat.DoShowAllTreesInHabitat.execute(DoShowAllTreesInHabitat.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenHabitatsMenu.execute(DoOpenHabitatsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-20-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-20-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 18,435 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|T1|Pinheiro 4|60|20|PERENE|GERARFOLHAS
! ÁRVORE|T3|Figueira|5|10|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|2
! ÁRVORE|T1|Pinheiro 4|60|20|PERENE|GERARFOLHAS
! ÁRVORE|T3|Figueira|5|10|CADUCA|GERARFOLHAS
! HABITAT|h2|outro nome|122|2
! ÁRVORE|T2|Oliveira|120|10|PERENE|GERARFOLHAS
! ÁRVORE|T4|Plátano|30|20|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|2
! ÁRVORE|T1|Pinheiro 4|60|20|PERENE|LARGARFOLHAS
! ÁRVORE|T3|Figueira|5|10|CADUCA|SEMFOLHAS
! HABITAT|h2|outro nome|122|2
! ÁRVORE|T2|Oliveira|120|10|PERENE|LARGARFOLHAS
! ÁRVORE|T4|Plátano|30|20|CADUCA|SEMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 0
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|2
! ÁRVORE|T1|Pinheiro 4|61|20|PERENE|GERARFOLHAS
! ÁRVORE|T3|Figueira|6|10|CADUCA|GERARFOLHAS
! HABITAT|h2|outro nome|122|2
! ÁRVORE|T2|Oliveira|121|10|PERENE|GERARFOLHAS
! ÁRVORE|T4|Plátano|31|20|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|2
! ÁRVORE|T1|Pinheiro 4|61|20|PERENE|COMFOLHAS
! ÁRVORE|T3|Figueira|6|10|CADUCA|COMFOLHAS
! HABITAT|h2|outro nome|122|2
! ÁRVORE|T2|Oliveira|121|10|PERENE|COMFOLHAS
! ÁRVORE|T4|Plátano|31|20|CADUCA|COMFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 0
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|2
! ÁRVORE|T1|Pinheiro 4|62|20|PERENE|GERARFOLHAS
! ÁRVORE|T3|Figueira|7|10|CADUCA|GERARFOLHAS
! HABITAT|h2|outro nome|122|2
! ÁRVORE|T2|Oliveira|122|10|PERENE|GERARFOLHAS
! ÁRVORE|T4|Plátano|32|20|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 0
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 1
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 3
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 0
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: HABITAT|h1|nome2|12|2
! ÁRVORE|T1|Pinheiro 4|64|20|PERENE|GERARFOLHAS
! ÁRVORE|T3|Figueira|9|10|CADUCA|GERARFOLHAS
! HABITAT|h2|outro nome|122|2
! ÁRVORE|T2|Oliveira|124|10|PERENE|GERARFOLHAS
! ÁRVORE|T4|Plátano|34|20|CADUCA|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 18,21 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: 
\ No newline at end of file
output differs from expected
                           A-07-21-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.ordinal()" because the return value of "hva.core.DeciduousTree.getSeason()" is null
	at hva.core.DeciduousTree.getBioCycle(DeciduousTree.java:12)
	at hva.core.Tree.toString(Tree.java:44)
	at hva.app.habitat.DoShowAllTreesInHabitat.execute(DoShowAllTreesInHabitat.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenHabitatsMenu.execute(DoOpenHabitatsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-07-21-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-07-21-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 18,25 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|h1|123|12|3|CADUCA|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 27,34 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) ÁRVORE|h2|234|12|3|PERENE|GERARFOLHAS
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,32 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da árvore: Nome da árvore: Idade da árvore: Dificuldade de limpeza da árvore: Tipo de árvore: (CADUCA ou PERENE) Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 36,61 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ÁRVORE|h1|123|12|3|CADUCA|GERARFOLHAS
! ÁRVORE|h2|234|12|3|PERENE|GERARFOLHAS
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 34,37 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: 
\ No newline at end of file
output differs from expected
                           A-08-01-M-ok.in                           
Running: Running: *** expected/A-08-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-08-01-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 10,17 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 0
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,16 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
output differs from expected
                           A-08-02-M-ok.in                           
Running: Running: *** expected/A-08-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-08-02-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 10,17 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 96
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,16 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
output differs from expected
                           A-08-03-M-ok.in                           
Running: Running: *** expected/A-08-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-08-03-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 10,17 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 340
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,16 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
output differs from expected
                           A-08-04-M-ok.in                           
Running: Running: *** expected/A-08-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-08-04-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 10,17 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 600
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,16 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
output differs from expected
                           A-08-05-M-ok.in                           
Running: Running: *** expected/A-08-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-08-05-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 10,17 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 600
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,16 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 51,58 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 400
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 50,56 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
output differs from expected
                           A-09-01-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-01-M-ok.out	Sat Oct 26 20:14:22 2024
      ZONE  1      
*** 16,44 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|a1|animal1|C10|VOID|h1
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-09-02-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-02-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 16,38 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Registar animal: Operação inválida: O habitat 'hh1' não existe.
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-09-03-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-03-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 16,51 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Registar animal: Operação inválida: O animal 'a2' já existe.
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|a2|animal 2|C10|VOID|h1
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-09-04-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-04-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 16,51 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Registar animal: Operação inválida: O animal 'a1' já existe.
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|a1|an 2|C10|VOID|h1
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-09-05-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-05-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 16,44 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Nome da espécie: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|a1|nome|abc|VOID|h2
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-09-06-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-06-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 23,54 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Registar animal: Operação inválida: O animal 'aaDD' já existe.
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|AAdd|Avestruz|C10|VOID|h1
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 23,26 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-09-07-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-07-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 16,52 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|aadd|Avestruz|CcdE10|VOID|h1
! ANIMAL|ee1|nome 2|CcdE10|VOID|h1
! ANIMAL|x1|nome|CcdE10|VOID|h2
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-09-08-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-09-08-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-09-08-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 68,96 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|a1|patudo|C1|VOID|h1
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 68,71 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-10-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-10-02-M-ok.in                           
Running: Running: TEST PASSED!
                           A-10-03-M-ok.in                           
Running: Running: *** expected/A-10-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-10-03-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 50,71 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Pinguim 1|C1|VOID|AR1
! ANIMAL|A3|Macaco 1|C2|VOID|AR1
! ANIMAL|A4|Macaco 2|C2|VOID|AR1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A2|Pinguim 2|C1|VOID|AR2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 50,69 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-10-04-M-ok.in                           
Running: Running: *** expected/A-10-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-10-04-M-ok.out	Sat Oct 26 20:14:23 2024
      ZONE  1      
*** 50,71 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A3|Macaco 1|C2|VOID|AR1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Pinguim 1|C1|VOID|AR2
! ANIMAL|A2|Pinguim 2|C1|VOID|AR2
! ANIMAL|A4|Macaco 2|C2|VOID|AR2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 50,69 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 118,129 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 116,128 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-10-05-M-ok.in                           
Running: Running: *** expected/A-10-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-10-05-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 50,63 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A3|Macaco 1|C2|VOID|AR1
! ANIMAL|A4|Macaco 2|C2|VOID|AR1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 50,62 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-10-06-M-ok.in                           
Running: Running: *** expected/A-10-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-10-06-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 16,28 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Identificador único do habitat: Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|A1|Pinguim 1|C1|VOID|AR1
  ANIMAL|A2|Pinguim 2|C1|VOID|AR2
  ANIMAL|A3|Macaco 1|C2|VOID|AR1
  ANIMAL|A4|Macaco 2|C2|VOID|AR1
--- 16,29 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Identificador único do habitat: Transferir para habitat: Operação inválida: O animal 'a1' não existe.
! Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|A1|Pinguim 1|C1|VOID|AR2
  ANIMAL|A2|Pinguim 2|C1|VOID|AR2
  ANIMAL|A3|Macaco 1|C2|VOID|AR1
  ANIMAL|A4|Macaco 2|C2|VOID|AR1
      ZONE  2      
*** 50,71 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Pinguim 1|C1|VOID|AR1
! ANIMAL|A3|Macaco 1|C2|VOID|AR1
! ANIMAL|A4|Macaco 2|C2|VOID|AR1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A2|Pinguim 2|C1|VOID|AR2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 51,70 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-10-07-M-ok.in                           
Running: Running: *** expected/A-10-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-10-07-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 16,29 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Identificador único do habitat: Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
  Escolha uma opção: ANIMAL|A1|Pinguim 1|C1|VOID|AR2
! ANIMAL|A2|Pinguim 2|C1|VOID|AR1
  ANIMAL|A3|Macaco 1|C2|VOID|AR1
  ANIMAL|A4|Macaco 2|C2|VOID|AR1
  Gestão de Animais
--- 16,30 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Identificador único do habitat: Transferir para habitat: Operação inválida: O habitat 'ar1' não existe.
! Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
  Escolha uma opção: ANIMAL|A1|Pinguim 1|C1|VOID|AR2
! ANIMAL|A2|Pinguim 2|C1|VOID|AR2
  ANIMAL|A3|Macaco 1|C2|VOID|AR1
  ANIMAL|A4|Macaco 2|C2|VOID|AR1
  Gestão de Animais
      ZONE  2      
*** 50,71 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A2|Pinguim 2|C1|VOID|AR1
! ANIMAL|A3|Macaco 1|C2|VOID|AR1
! ANIMAL|A4|Macaco 2|C2|VOID|AR1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Pinguim 1|C1|VOID|AR2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 51,70 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-11-01-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Animal.computeSatisfaction()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-01-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 46,68 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Calcular satisfação de animal: Operação inválida: O animal 'a1' não existe.
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 46,49 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-02-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-02-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 16,38 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 32
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-03-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-03-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 16,38 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 32
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-04-M-ok.in                           
Running: Running: *** expected/A-11-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-04-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,56 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
  0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 52
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 26,41 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Mostrar árvores de habitat: Operação inválida: O habitat '4' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-11-05-M-ok.in                           
Running: Running: *** expected/A-11-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-05-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,56 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
  0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 52
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 26,41 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Mostrar árvores de habitat: Operação inválida: O habitat '4' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  3      
*** 71,77 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 56,62 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  4      
*** 79,109 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
  0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 32
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 64,79 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Mostrar árvores de habitat: Operação inválida: O habitat '4' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-11-06-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.ArithmeticException: / by zero
	at hva.core.Animal.computeSatisfaction(Animal.java:32)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-06-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,44 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,33 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Opção inválida!
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 64,139 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 52
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 12
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 53,56 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-07-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.ArithmeticException: / by zero
	at hva.core.Animal.computeSatisfaction(Animal.java:32)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-07-M-ok.out	Sat Oct 26 20:14:24 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,44 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,33 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Opção inválida!
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 64,139 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 52
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 52
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 53,56 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-08-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-08-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-08-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 27,63 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 34
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 34
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 34
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 27,30 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-09-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-09-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-09-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 16,52 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 40
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 40
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 40
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-10-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-10-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-10-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 16,98 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 34
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 54
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 54
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-11-M-ok.in                           
Running: Running: *** expected/A-11-11-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-11-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,56 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
  0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 32
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 26,41 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Mostrar árvores de habitat: Operação inválida: O habitat '4' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-11-12-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-12-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-12-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,44 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 26,33 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Opção inválida!
! Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  3      
*** 64,93 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 32
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 162
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 53,56 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-13-M-ok.in                           
Running: Running: *** expected/A-11-13-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-13-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,56 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
  0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 12
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 26,41 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Mostrar árvores de habitat: Operação inválida: O habitat '4' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-11-14-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-14-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-14-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 16,38 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 32
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-15-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-15-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-15-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 16,38 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 22
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-16-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-16-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-16-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 16,75 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 22
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 22
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: ANIMAL|a1|Farrusco|C2|VOID|h2
! ANIMAL|a2|Farrusco 2|C2|VOID|h1
! ANIMAL|a3|Farrusco 3|C1|VOID|h1
! ANIMAL|a4|Farrusco 4|C1|VOID|h1
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 142
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 20
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-11-17-M-ok.in                           
Running: Running: *** expected/A-11-17-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-17-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 18,24 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
--- 18,24 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Influência (positiva, negativa, neutra: POS, NEG, NEU): Gestão de Habitats
  1 - Visualizar todos os habitats
  2 - Registar habitat
  3 - Alterar área de habitat
      ZONE  2      
*** 26,73 ****
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
  0 - Sair
! Escolha uma opção: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|a1|Farrusco|C2|VOID|h1
! ANIMAL|a2|Farrusco 2|C2|VOID|h2
! ANIMAL|a3|Farrusco 3|C1|VOID|h1
! ANIMAL|a4|Farrusco 4|C1|VOID|h1
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 122
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 26,63 ----
  5 - Plantar árvore
  6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Mostrar árvores de habitat: Operação inválida: O habitat '3' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: HABITAT|h1|nome2|12|0
! HABITAT|h2|outro nome|122|0
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Identificador único da espécie: Influência (positiva, negativa, neutra: POS, NEG, NEU): Alterar influência de habitat sobre espécie: Operação inválida: O habitat 'a2' não existe.
! Gestão de Habitats
! 1 - Visualizar todos os habitats
! 2 - Registar habitat
! 3 - Alterar área de habitat
! 4 - Alterar influência de habitat sobre espécie
! 5 - Plantar árvore
! 6 - Mostrar árvores de habitat
  0 - Sair
! Escolha uma opção: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  3      
*** 79,82 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 69,72 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-11-18-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Adequation.getValue()" because the return value of "java.util.HashMap.get(Object)" is null
	at hva.core.Habitat.getAdequationValue(Habitat.java:30)
	at hva.core.Animal.computeSatisfaction(Animal.java:31)
	at hva.app.animal.DoShowSatisfactionOfAnimal.execute(DoShowSatisfactionOfAnimal.java:23)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-11-18-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-11-18-M-ok.out	Sat Oct 26 20:14:25 2024
      ZONE  1      
*** 31,81 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 24
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 19
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 50
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Identificador único do animal: 50
! Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 31,34 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: 
\ No newline at end of file
output differs from expected
                           A-12-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-16-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-16-02-M-ok.in                           
Running: Running: TEST PASSED!
                           A-16-03-M-ok.in                           
Running: Running: TEST PASSED!
                           A-16-04-M-ok.in                           
Running: Running: TEST PASSED!
                           A-16-05-M-ok.in                           
Running: Running: TEST PASSED!
                           A-16-06-M-ok.in                           
Running: Running: *** expected/A-16-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-16-06-M-ok.out	Sat Oct 26 20:14:26 2024
      ZONE  1      
*** 17,32 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Nome do funcionário: Tipo do funcionário? (VET ou TRT) Tipo do funcionário? (VET ou TRT) Tipo do funcionário? (VET ou TRT) Tipo do funcionário? (VET ou TRT) Tipo do funcionário? (VET ou TRT) Tipo do funcionário? (VET ou TRT) Tipo do funcionário? (VET ou TRT) Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: TRT|T1|Trt one
  VET|V1|Vet one
! VET|vvvv1|nome nove
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
--- 17,38 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Nome do funcionário: Tipo do funcionário? (VET ou TRT) Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: TRT|T1|Trt one
  VET|V1|Vet one
! TRT|vvvv1|nome nove
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
      ZONE  2      
*** 46,49 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 
--- 52,55 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 
\ No newline at end of file
output differs from expected
                           A-17-01-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-02-M-ok.in                           
Running: Running: *** expected/A-17-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-17-02-M-ok.out	Sat Oct 26 20:14:26 2024
      ZONE  1      
*** 17,32 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Atribuir responsabilidade: Operação inválida: O funcionário 'V2' não existe.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Atribuir responsabilidade: Operação inválida: O funcionário 'T2' não existe.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
output differs from expected
                           A-17-03-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-04-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-05-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-06-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-07-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-08-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-09-M-ok.in                           
Running: Running: TEST PASSED!
                           A-17-10-M-ok.in                           
Running: Running: *** expected/A-17-10-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-17-10-M-ok.out	Sat Oct 26 20:14:27 2024
      ZONE  1      
*** 31,38 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: TRT|T1|Trt one|H1
! VET|V1|Vet one|C1
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
--- 31,38 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: TRT|T1|Trt one
! VET|V1|Vet one
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
output differs from expected
                           A-18-01-M-ok.in                           
Running: Running: *** expected/A-18-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-18-01-M-ok.out	Sat Oct 26 20:14:27 2024
      ZONE  1      
*** 17,38 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Retirar responsabilidade: Operação inválida: O funcionário 'H2' não existe.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Retirar responsabilidade: Operação inválida: Responsabilidade (habitat ou espécie) 'C2' não atribuída ao funcionário 'V1'.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,40 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-18-02-M-ok.in                           
Running: Running: *** expected/A-18-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-18-02-M-ok.out	Sat Oct 26 20:14:27 2024
      ZONE  1      
*** 47,60 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: TRT|T1|Trt one
  VET|V1|Vet one|C1,C2
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
--- 47,62 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: TRT|T1|Trt one|H1
  VET|V1|Vet one|C1,C2
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
      ZONE  2      
*** 63,77 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: TRT|T1|Trt one
! VET|V1|Vet one|C2
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
--- 65,81 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: TRT|T1|Trt one|H1
! VET|V1|Vet one|C1,C2
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
output differs from expected
                           A-18-03-M-ok.in                           
Running: Running: *** expected/A-18-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-18-03-M-ok.out	Sat Oct 26 20:14:27 2024
      ZONE  1      
*** 40,61 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Retirar responsabilidade: Operação inválida: Responsabilidade (habitat ou espécie) 'H1' não atribuída ao funcionário 'V1'.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Retirar responsabilidade: Operação inválida: Responsabilidade (habitat ou espécie) 'C1' não atribuída ao funcionário 'T1'.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 40,63 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-18-04-M-ok.in                           
Running: Running: *** expected/A-18-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-18-04-M-ok.out	Sat Oct 26 20:14:27 2024
      ZONE  1      
*** 33,46 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: TRT|T1|Trt one
  VET|V1|Vet one
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
--- 33,48 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: TRT|T1|Trt one|H1
  VET|V1|Vet one
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
output differs from expected
                           A-18-05-M-ok.in                           
Running: Running: *** expected/A-18-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-18-05-M-ok.out	Sat Oct 26 20:14:27 2024
      ZONE  1      
*** 26,40 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: TRT|T1|Trt one
! VET|V1|Vet one|C1
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
--- 26,42 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: TRT|T1|Trt one
! VET|V1|Vet one|C1,C2
  Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
output differs from expected
                           A-18-06-M-ok.in                           
Running: Running: *** expected/A-18-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-18-06-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,45 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Retirar responsabilidade: Operação inválida: Responsabilidade (habitat ou espécie) 'C1' não atribuída ao funcionário 'V1'.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Retirar responsabilidade: Operação inválida: Responsabilidade (habitat ou espécie) 'H1' não atribuída ao funcionário 'T1'.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,49 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-01-M-ok.in                           
Running: Running: *** expected/A-19-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-01-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 20
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-02-M-ok.in                           
Running: Running: *** expected/A-19-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-02-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 20
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: TRT|T1|Rohit Figueiredo|H1
  TRT|T2|Rohit Figueiredo 3|H1,H4
  TRT|T3|Rohit Figueiredo 6|H2,H3,H4
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: TRT|T1|Rohit Figueiredo|H1
  TRT|T2|Rohit Figueiredo 3|H1,H4
  TRT|T3|Rohit Figueiredo 6|H2,H3,H4
output differs from expected
                           A-19-03-M-ok.in                           
Running: Running: *** expected/A-19-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-03-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 18
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-04-M-ok.in                           
Running: Running: *** expected/A-19-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-04-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 15
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-05-M-ok.in                           
Running: Running: *** expected/A-19-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-05-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,45 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 15
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 17
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,47 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-06-M-ok.in                           
Running: Running: *** expected/A-19-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-06-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,38 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 18
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 19
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,38 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-07-M-ok.in                           
Running: Running: *** expected/A-19-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-07-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,46 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 20
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 19
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 19
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,46 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-08-M-ok.in                           
Running: Running: *** expected/A-19-08-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-08-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Calcular satisfação de funcionário: Operação inválida: O funcionário 'TT' não existe.
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-09-M-ok.in                           
Running: Running: *** expected/A-19-09-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-09-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -220
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-10-M-ok.in                           
Running: Running: *** expected/A-19-10-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-10-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -229
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-11-M-ok.in                           
Running: Running: *** expected/A-19-11-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-11-M-ok.out	Sat Oct 26 20:14:28 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -655
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-12-M-ok.in                           
Running: Running: *** expected/A-19-12-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-12-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -655
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: TRT|T1|Rohit Figueiredo|H3,H4
  TRT|T2|Rohit Figueiredo 3|H1
  TRT|T3|Rohit Figueiredo 6|H2
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: TRT|T1|Rohit Figueiredo|H3,H4
  TRT|T2|Rohit Figueiredo 3|H1
  TRT|T3|Rohit Figueiredo 6|H2
      ZONE  2      
*** 40,60 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Identificador único da responsabilidade: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -126
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 40,62 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-13-M-ok.in                           
Running: Running: *** expected/A-19-13-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-13-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -86
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-14-M-ok.in                           
Running: Running: *** expected/A-19-14-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-14-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 300
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-15-M-ok.in                           
Running: Running: *** expected/A-19-15-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-15-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 193
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-16-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-19-16-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-16-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 29,72 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Identificador único do funcionário: 186
- Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: 
\ No newline at end of file
--- 29,32 ----
output differs from expected
                           A-19-17-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-19-17-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-17-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 10,106 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Identificador único do funcionário: 165
- Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 3
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Identificador único do funcionário: 200
- Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: 
\ No newline at end of file
--- 10,13 ----
output differs from expected
                           A-19-18-M-ok.in                           
Running: Running: *** expected/A-19-18-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-18-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 193
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-19-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-19-19-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-19-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 10,93 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Identificador único do funcionário: 193
- Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Identificador único do funcionário: 193
- Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: 
\ No newline at end of file
--- 10,13 ----
output differs from expected
                           A-19-20-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-19-20-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-20-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,81 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
- Escolha uma opção: Identificador único do funcionário: 193
- Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 2
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 3
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
--- 17,22 ----
      ZONE  2      
*** 83,96 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 186
! Gestão de Funcionários
! 1 - Visualizar todos os funcionários
! 2 - Registar funcionário
! 3 - Atribuir responsabilidade
! 4 - Retirar responsabilidade
! 5 - Calcular satisfação de funcionário
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 24,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-21-M-ok.in                           
Running: Running: *** expected/A-19-21-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-21-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 172
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-22-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-19-22-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-22-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,55 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
- Escolha uma opção: Identificador único do funcionário: 172
- Gestão de Funcionários
- 1 - Visualizar todos os funcionários
- 2 - Registar funcionário
- 3 - Atribuir responsabilidade
- 4 - Retirar responsabilidade
- 5 - Calcular satisfação de funcionário
- 0 - Sair
- Escolha uma opção: Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
- Escolha uma opção: 1
- Menu Principal
- 1 - Criar ficheiro
- 2 - Abrir ficheiro
- 3 - Guardar ficheiro
- 4 - Avançar estação do ano
- 5 - Ver satisfação global
- 6 - Gestão de animais
- 7 - Gestão de funcionários
- 8 - Gestão de habitats
- 9 - Gestão de vacinas
- 10 - Consultas
- 0 - Sair
  Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
--- 17,22 ----
      ZONE  2      
*** 57,110 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 158
! Gestão de Funcionários
! 1 - Visualizar todos os funcionários
! 2 - Registar funcionário
! 3 - Atribuir responsabilidade
! 4 - Retirar responsabilidade
! 5 - Calcular satisfação de funcionário
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 2
! Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Funcionários
! 1 - Visualizar todos os funcionários
! 2 - Registar funcionário
! 3 - Atribuir responsabilidade
! 4 - Retirar responsabilidade
! 5 - Calcular satisfação de funcionário
! 0 - Sair
! Escolha uma opção: Identificador único do funcionário: 117
! Gestão de Funcionários
! 1 - Visualizar todos os funcionários
! 2 - Registar funcionário
! 3 - Atribuir responsabilidade
! 4 - Retirar responsabilidade
! 5 - Calcular satisfação de funcionário
! 0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 24,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-23-M-ok.in                           
Running: Running: *** expected/A-19-23-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-23-M-ok.out	Sat Oct 26 20:14:29 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 257
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 44,57 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 257
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 44,57 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-24-M-ok.in                           
Running: Running: *** expected/A-19-24-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-24-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -241
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-25-M-ok.in                           
Running: Running: *** expected/A-19-25-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-25-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: -17
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-26-M-ok.in                           
Running: Running: *** expected/A-19-26-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-26-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 17,30 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 143
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,30 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-19-27-M-ok.in                           
Running: Running: *** expected/A-19-27-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-19-27-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 17,54 ****
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 248
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 260
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 128
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: 228
! Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,54 ----
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Funcionários
  1 - Visualizar todos os funcionários
  2 - Registar funcionário
  3 - Atribuir responsabilidade
  4 - Retirar responsabilidade
  5 - Calcular satisfação de funcionário
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-20-01-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar vacina' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.optionField(Form.java:175)
	at pt.tecnico.uilib.menus.Command.optionField(Command.java:142)
	at hva.app.vaccine.DoRegisterVaccine.execute(DoRegisterVaccine.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenVaccinesMenu.execute(DoOpenVaccinesMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-20-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-20-01-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 16,58 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: VACINA|Vac1|Nome 1|0|E1
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: VACINA|Vac1|Nome 1|0|E1
! VACINA|Vac2|Nome 2|0|E1,E3
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-20-02-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar vacina' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.optionField(Form.java:175)
	at pt.tecnico.uilib.menus.Command.optionField(Command.java:142)
	at hva.app.vaccine.DoRegisterVaccine.execute(DoRegisterVaccine.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenVaccinesMenu.execute(DoOpenVaccinesMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-20-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-20-02-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 16,44 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Registar vacina: Operação inválida: A espécie 'E4' não existe.
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-20-03-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar vacina' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.optionField(Form.java:175)
	at pt.tecnico.uilib.menus.Command.optionField(Command.java:142)
	at hva.app.vaccine.DoRegisterVaccine.execute(DoRegisterVaccine.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenVaccinesMenu.execute(DoOpenVaccinesMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-20-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-20-03-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 16,44 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Registar vacina: Operação inválida: A espécie 'E4' não existe.
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-20-04-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar vacina' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.optionField(Form.java:175)
	at pt.tecnico.uilib.menus.Command.optionField(Command.java:142)
	at hva.app.vaccine.DoRegisterVaccine.execute(DoRegisterVaccine.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenVaccinesMenu.execute(DoOpenVaccinesMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-20-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-20-04-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 23,52 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Registar vacina: Operação inválida: A vacina 'V1' já existe.
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Registar vacina: Operação inválida: A vacina 'v1' já existe.
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 23,26 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-20-05-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar vacina' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.optionField(Form.java:175)
	at pt.tecnico.uilib.menus.Command.optionField(Command.java:142)
	at hva.app.vaccine.DoRegisterVaccine.execute(DoRegisterVaccine.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenVaccinesMenu.execute(DoOpenVaccinesMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-20-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-20-05-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 16,65 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: VACINA|V1|nome 1|0|E1,E2,E4,E5
! VACINA|V2|nome 2|0|E1,E5
! VACINA|V3|nome 3|0|E2,E3,E5
! VACINA|V4|nome 4|0|E2,E3,E4
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 16,19 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-21-01-M-ok.in                           
Running: Running: *** expected/A-21-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-01-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 16,35 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Vacinar animal: Operação inválida: O veterinário 'VV1' não existe.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Vacinar animal: Operação inválida: O animal 'A1' não existe.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,39 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-21-02-M-ok.in                           
Running: Running: *** expected/A-21-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-02-M-ok.out	Sat Oct 26 20:14:30 2024
      ZONE  1      
*** 16,28 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Vacinar animal: Operação inválida: O veterinário 'Trt1' não existe.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,30 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-21-03-M-ok.in                           
Running: Running: *** expected/A-21-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-03-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,28 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Vacinar animal: Operação inválida: A vacina 'Vacina1' não existe.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,30 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-21-04-M-ok.in                           
Running: Running: *** expected/A-21-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-04-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,28 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Vacinar animal: Operação inválida: O veterinário 'Vet2' não pode ministrar vacinas à espécie 'E1'
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
--- 16,30 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
output differs from expected
                           A-21-05-M-ok.in                           
Running: Running: *** expected/A-21-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-05-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,29 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 16,31 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
output differs from expected
                           A-21-06-M-ok.in                           
Running: Running: *** expected/A-21-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-06-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,27 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,30 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 40,46 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|NORMAL|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
--- 43,49 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
output differs from expected
                           A-21-07-M-ok.in                           
Running: Running: *** expected/A-21-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-07-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,36 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac3|Vet2|E2
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 16,40 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
output differs from expected
                           A-21-08-M-ok.in                           
Running: Running: *** expected/A-21-08-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-08-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,34 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,40 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 48,55 ****
  4 - Calcular satisfação de animal
  0 - Sair
  Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
! ANIMAL|AA2|Patudo 2|E1|NORMAL|H1
! ANIMAL|AA3|Malhado|E2|NORMAL|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
--- 54,61 ----
  4 - Calcular satisfação de animal
  0 - Sair
  Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
! ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
output differs from expected
                           A-21-09-M-ok.in                           
Running: Running: *** expected/A-21-09-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-09-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,36 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: VACINA|Vac1|nome 1|0|E1
  VACINA|Vac2|nome 2|0|E2
! VACINA|Vac3|nome 3|2|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
--- 16,42 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: VACINA|Vac1|nome 1|0|E1
  VACINA|Vac2|nome 2|0|E2
! VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
output differs from expected
                           A-21-10-M-ok.in                           
Running: Running: *** expected/A-21-10-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-10-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 17,37 ****
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Número inválido!
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet3|E1
! REGISTO-VACINA|Vac3|Vet3|E2
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 17,41 ----
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
      ZONE  2      
*** 56,63 ****
  4 - Calcular satisfação de animal
  0 - Sair
  Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
! ANIMAL|AA2|Patudo 2|E1|NORMAL|H1
! ANIMAL|AA3|Malhado|E2|NORMAL|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
--- 60,67 ----
  4 - Calcular satisfação de animal
  0 - Sair
  Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
! ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
      ZONE  3      
*** 82,90 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|1|E1
  VACINA|Vac2|nome 2|0|E2
! VACINA|Vac3|nome 3|1|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
--- 86,94 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|0|E1
  VACINA|Vac2|nome 2|0|E2
! VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
output differs from expected
                           A-21-11-M-ok.in                           
Running: Running: *** expected/A-21-11-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-11-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,29 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 16,31 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
      ZONE  2      
*** 41,47 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 43,49 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  3      
*** 53,56 ****
--- 55,59 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: 
\ No newline at end of file
output differs from expected
                           A-21-12-M-ok.in                           
Running: Running: *** expected/A-21-12-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-12-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 10,16 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,17 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Abrir ficheiro: Operação inválida: Problema ao abrir ficheiro: ap01.dat (No such file or directory)
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 28,44 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|1|E1
! VACINA|Vac2|nome 2|0|E2
! VACINA|Vac3|nome 3|0|E1,E2
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 29,41 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
output differs from expected
                           A-21-13-M-ok.in                           
Running: Running: *** expected/A-21-13-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-13-M-ok.out	Sat Oct 26 20:14:31 2024
      ZONE  1      
*** 16,35 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,39 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 48,56 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|CONFUSÃO|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|CONFUSÃO|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
--- 52,60 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
      ZONE  3      
*** 69,72 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 
--- 73,76 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: 
\ No newline at end of file
output differs from expected
                           A-21-14-M-ok.in                           
Running: Running: *** expected/A-21-14-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-14-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 17,36 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 17,40 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 49,57 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|ACIDENTE|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|ACIDENTE|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
--- 53,61 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
      ZONE  3      
*** 76,91 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet2|E2
! REGISTO-VACINA|Vac2|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|1|E1
! VACINA|Vac2|nome 2|1|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
--- 80,93 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|0|E1
! VACINA|Vac2|nome 2|0|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
output differs from expected
                           A-21-15-M-ok.in                           
Running: Running: *** expected/A-21-15-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-15-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,35 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,39 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 48,56 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|ERRO|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|ERRO|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
--- 52,60 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
! ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
  1 - Visualizar todos os animais
  2 - Registar animal
      ZONE  3      
*** 75,90 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet2|E2
! REGISTO-VACINA|Vac2|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|1|E1
! VACINA|Vac2|nome 2|1|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
--- 79,92 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|0|E1
! VACINA|Vac2|nome 2|0|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
output differs from expected
                           A-21-16-M-ok.in                           
Running: Running: *** expected/A-21-16-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-16-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,38 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA2'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E2
! REGISTO-VACINA|Vac1|Vet2|E3
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 16,40 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
      ZONE  2      
*** 56,63 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E2|ACIDENTE|H1
! ANIMAL|AA2|Patudo 2|E3|ERRO|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
  1 - Visualizar todos os animais
--- 58,65 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E2|VOID|H1
! ANIMAL|AA2|Patudo 2|E3|VOID|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
  1 - Visualizar todos os animais
output differs from expected
                           A-21-17-M-ok.in                           
Running: Running: *** expected/A-21-17-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-17-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,42 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Número inválido!
! Escolha uma opção: VACINA|Vac1|nome 1|2|E1
! VACINA|Vac2|nome 2|1|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
--- 16,51 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: VACINA|Vac1|nome 1|0|E1
! VACINA|Vac2|nome 2|0|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
      ZONE  2      
*** 44,53 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac2|Vet2|E2
! REGISTO-VACINA|Vac1|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 53,59 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
output differs from expected
                           A-21-18-M-ok.in                           
Running: Running: *** expected/A-21-18-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-18-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,28 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Vacinar animal: Operação inválida: O veterinário 'Vet2' não pode ministrar vacinas à espécie 'E1'
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
--- 16,30 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
output differs from expected
                           A-21-19-M-ok.in                           
Running: Running: *** expected/A-21-19-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-19-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,55 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac4' não é apropiada para o animal 'AA4'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac1|Vet3|E3
! REGISTO-VACINA|Vac4|Vet4|E4
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|1|E1
! VACINA|Vac2|nome 2|1|E2
  VACINA|Vac3|nome 3|0|E1,E2
! VACINA|Vac4|nome 3|1|E5
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
--- 16,58 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|0|E1
! VACINA|Vac2|nome 2|0|E2
  VACINA|Vac3|nome 3|0|E1,E2
! VACINA|Vac4|nome 3|0|E5
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
output differs from expected
                           A-21-20-M-ok.in                           
Running: Running: *** expected/A-21-20-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-20-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,29 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|1|E2,E3,E4
  VACINA|Vac2|nome 2|0|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
--- 16,31 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: VACINA|Vac1|nome 1|0|E2,E3,E4
  VACINA|Vac2|nome 2|0|E2
  VACINA|Vac3|nome 3|0|E1,E2
  Gestão de Vacinas
      ZONE  2      
*** 32,39 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
--- 34,40 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
      ZONE  3      
*** 57,63 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|ERRO|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
--- 58,64 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
output differs from expected
                           A-21-21-M-ok.in                           
Running: Running: *** expected/A-21-21-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-21-21-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,76 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac1|Vet1|E1
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|2|E4
! VACINA|Vac2|nome 2|2|E3
! VACINA|Vac3|nome 3|2|E1
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
--- 16,84 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: VACINA|Vac1|nome 1|0|E4
! VACINA|Vac2|nome 2|0|E3
! VACINA|Vac3|nome 3|0|E1
  Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
      ZONE  2      
*** 95,101 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|ERRO,ACIDENTE,NORMAL,ACIDENTE,NORMAL,ERRO|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
--- 103,109 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: ANIMAL|AA1|Patudo|E1|VOID|H1
  ANIMAL|AA2|Patudo 2|E1|VOID|H1
  ANIMAL|AA3|Malhado|E2|VOID|H1
  Gestão de Animais
      ZONE  3      
*** 116,122 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro sem nome. Guardar ficheiro como: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 124,130 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  4      
*** 128,131 ****
--- 136,140 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: 
\ No newline at end of file
output differs from expected
                           A-22-01-M-ok.in                           
Running: Running: *** expected/A-22-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-22-01-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,28 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Animais de um habitat: Operação inválida: O habitat 'HH1' não existe.
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,28 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-22-02-M-ok.in                           
Running: Running: *** expected/A-22-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-22-02-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,34 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Nome 1|E1|VOID|H1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,35 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-22-03-M-ok.in                           
Running: Running: *** expected/A-22-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-22-03-M-ok.out	Sat Oct 26 20:14:32 2024
      ZONE  1      
*** 16,39 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Nome 1|E1|VOID|H1
! ANIMAL|A2|Nome 1|E1|VOID|H1
! ANIMAL|A3|Nome 1|E1|VOID|H1
! ANIMAL|A7|Nome 1|E1|VOID|H1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A4|Nome 1|E3|VOID|H2
! ANIMAL|A6|Nome 1|E1|VOID|H2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,35 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-22-04-M-ok.in                           
Running: Running: *** expected/A-22-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-22-04-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,45 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A4|Nome 1|E3|VOID|H2
! ANIMAL|A6|Nome 1|E1|VOID|H2
! ANIMAL|AA1|Nome 1|E1|VOID|H2
! ANIMAL|B2|Nome 1|E1|VOID|H2
! ANIMAL|C4|Nome 1|E2|VOID|H2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Nome 1|E1|VOID|H1
! ANIMAL|A2|Nome 1|E1|VOID|H1
! ANIMAL|A3|Nome 1|E1|VOID|H1
! ANIMAL|A7|Nome 1|E1|VOID|H1
! ANIMAL|AA|Nome 1|E1|VOID|H1
! ANIMAL|AA3|Nome 1|E1|VOID|H1
! ANIMAL|X1|Nome 1|E1|VOID|H1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,35 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-22-05-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar animal' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.stringField(Form.java:167)
	at pt.tecnico.uilib.menus.Command.stringField(Command.java:138)
	at hva.app.animal.DoRegisterAnimal.execute(DoRegisterAnimal.java:34)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenAnimalsMenu.execute(DoOpenAnimalsMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-22-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-22-05-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,34 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Nome 1|E1|VOID|H1
! ANIMAL|A2|Nome 1|E1|VOID|H1
! ANIMAL|A3|Nome 1|E1|VOID|H1
! ANIMAL|A7|Nome 1|E1|VOID|H1
! ANIMAL|AA|Nome 1|E1|VOID|H1
! ANIMAL|AA3|Nome 1|E1|VOID|H1
! ANIMAL|X1|Nome 1|E1|VOID|H1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Opção inválida!
  Consultas
  1 - Animais de um habitat
--- 16,28 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Opção inválida!
  Consultas
  1 - Animais de um habitat
      ZONE  2      
*** 36,65 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A4|Nome 1|E3|VOID|H2
! ANIMAL|A6|Nome 1|E1|VOID|H2
! ANIMAL|AA1|Nome 1|E1|VOID|H2
! ANIMAL|B2|Nome 1|E1|VOID|H2
! ANIMAL|C4|Nome 1|E2|VOID|H2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A1|Nome 1|E1|VOID|H1
! ANIMAL|A2|Nome 1|E1|VOID|H1
! ANIMAL|A3|Nome 1|E1|VOID|H1
! ANIMAL|A7|Nome 1|E1|VOID|H1
! ANIMAL|AA|Nome 1|E1|VOID|H1
! ANIMAL|AA3|Nome 1|E1|VOID|H1
! ANIMAL|X1|Nome 1|E1|VOID|H1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 30,49 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  3      
*** 78,131 ****
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único da espécie: Identificador único do habitat: Gestão de Animais
! 1 - Visualizar todos os animais
! 2 - Registar animal
! 3 - Transferir para habitat
! 4 - Calcular satisfação de animal
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: Identificador único do habitat: ANIMAL|A0|novo nome|E1|VOID|H1
! ANIMAL|A1|Nome 1|E1|VOID|H1
! ANIMAL|A2|Nome 1|E1|VOID|H1
! ANIMAL|A3|Nome 1|E1|VOID|H1
! ANIMAL|A7|Nome 1|E1|VOID|H1
! ANIMAL|AA|Nome 1|E1|VOID|H1
! ANIMAL|AA3|Nome 1|E1|VOID|H1
! ANIMAL|X1|Nome 1|E1|VOID|H1
! Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 62,65 ----
  3 - Transferir para habitat
  4 - Calcular satisfação de animal
  0 - Sair
! Escolha uma opção: Identificador único do animal: Nome do animal: Identificador único do habitat: Identificador único da espécie: 
\ No newline at end of file
output differs from expected
                           A-23-01-M-ok.in                           
Running: Running: *** expected/A-23-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-23-01-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,34 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do animal: Actos médicos num animal: Operação inválida: O animal 'A1' não existe.
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do animal: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,35 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-23-02-M-ok.in                           
Running: Running: *** expected/A-23-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-23-02-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 10,16 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,17 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Abrir ficheiro: Operação inválida: Problema ao abrir ficheiro: ap03.dat (No such file or directory)
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 28,45 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do animal: REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac1|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 29,41 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-23-03-M-ok.in                           
Running: Running: Exception in thread "main" pt.tecnico.uilib.forms.FormException: O formulário 'Registar vacina' não está preenchido. Invoque o método parse() primeiro.
	at pt.tecnico.uilib.forms.Form.get(Form.java:147)
	at pt.tecnico.uilib.forms.Form.optionField(Form.java:175)
	at pt.tecnico.uilib.menus.Command.optionField(Command.java:142)
	at hva.app.vaccine.DoRegisterVaccine.execute(DoRegisterVaccine.java:27)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.main.DoOpenVaccinesMenu.execute(DoOpenVaccinesMenu.java:16)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
execution failed
*** expected/A-23-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-23-03-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 10,16 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,17 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Abrir ficheiro: Operação inválida: Problema ao abrir ficheiro: ap03.dat (No such file or directory)
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 28,190 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA2'.
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac3' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: Identificador único do animal: REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac1|Vet1|E1
! Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: Identificador único do animal: REGISTO-VACINA|Vac3|Vet2|E2
! REGISTO-VACINA|Vac4|Vet2|E2
! REGISTO-VACINA|Vac4|Vet2|E2
! Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
! 1 - Visualizar todas as vacinas
! 2 - Registar vacina
! 3 - Vacinar animal
! 4 - Mostrar vacinações
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: Identificador único do animal: REGISTO-VACINA|Vac3|Vet2|E2
! REGISTO-VACINA|Vac4|Vet2|E2
! REGISTO-VACINA|Vac4|Vet2|E2
! REGISTO-VACINA|Vac4|Vet3|E2
! Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: Menu Principal
! 1 - Criar ficheiro
! 2 - Abrir ficheiro
! 3 - Guardar ficheiro
! 4 - Avançar estação do ano
! 5 - Ver satisfação global
! 6 - Gestão de animais
! 7 - Gestão de funcionários
! 8 - Gestão de habitats
! 9 - Gestão de vacinas
! 10 - Consultas
! 0 - Sair
! Escolha uma opção: 
\ No newline at end of file
--- 29,32 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Nome da vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Identificadores das espécies que podem receber a vacina: Fim de entrada de dados (R-EOF): pt.tecnico.uilib.text.RuntimeEOFException: Fim do fluxo de dados de entrada
output differs from expected
                           A-24-01-M-ok.in                           
Running: Running: *** expected/A-24-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-01-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,34 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Actos médicos de um veterinário: Operação inválida: O veterinário 'vet22' não existe.
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,35 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-24-02-M-ok.in                           
Running: Running: *** expected/A-24-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-02-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,28 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Actos médicos de um veterinário: Operação inválida: O veterinário 'Trt1' não existe.
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,28 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-24-03-M-ok.in                           
Running: Running: *** expected/A-24-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-03-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,27 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,30 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 40,52 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac3|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 43,55 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-24-04-M-ok.in                           
Running: Running: *** expected/A-24-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-04-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,33 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,39 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 46,59 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 52,64 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-24-05-M-ok.in                           
Running: Running: *** expected/A-24-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-05-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,39 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,48 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 52,66 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 61,73 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-24-06-M-ok.in                           
Running: Running: *** expected/A-24-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-06-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,51 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,66 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 64,80 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 79,91 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-24-07-M-ok.in                           
Running: Running: *** expected/A-24-07-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-07-M-ok.out	Sat Oct 26 20:14:33 2024
      ZONE  1      
*** 16,45 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,57 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 58,79 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac1|Vet1|E2
! REGISTO-VACINA|Vac1|Vet1|E2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac1|Vet2|E2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 70,89 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-24-08-M-ok.in                           
Running: Running: *** expected/A-24-08-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-24-08-M-ok.out	Sat Oct 26 20:14:34 2024
      ZONE  1      
*** 10,16 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,17 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Abrir ficheiro: Operação inválida: Problema ao abrir ficheiro: ap03.dat (No such file or directory)
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 28,64 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac3|Vet2|E2
! REGISTO-VACINA|Vac4|Vet2|E2
! REGISTO-VACINA|Vac4|Vet2|E2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: REGISTO-VACINA|Vac4|Vet3|E1
! REGISTO-VACINA|Vac4|Vet3|E2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 29,55 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
output differs from expected
                           A-25-01-M-ok.in                           
Running: Running: *** expected/A-25-01-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-25-01-M-ok.out	Sat Oct 26 20:14:34 2024
      ZONE  1      
*** 40,57 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 40,63 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 112,124 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 118,132 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  3      
*** 137,144 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac2|Vet2|E2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
--- 145,151 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
output differs from expected
                           A-25-02-M-ok.in                           
Running: Running: *** expected/A-25-02-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-25-02-M-ok.out	Sat Oct 26 20:14:34 2024
      ZONE  1      
*** 16,41 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,48 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 54,62 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet2|E2
! REGISTO-VACINA|Vac2|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
--- 61,67 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
output differs from expected
                           A-25-03-M-ok.in                           
Running: Running: Exception in thread "main" java.lang.NullPointerException: Cannot invoke "hva.core.Season.next()" because "this._season" is null
	at hva.core.Hotel.nextSeason(Hotel.java:265)
	at hva.core.HotelManager.nextSeason(HotelManager.java:106)
	at hva.app.main.DoAdvanceSeason.execute(DoAdvanceSeason.java:20)
	at pt.tecnico.uilib.menus.Command.performCommand(Command.java:151)
	at pt.tecnico.uilib.text.TextInteraction.open(TextInteraction.java:114)
	at pt.tecnico.uilib.Dialog.open(Dialog.java:48)
	at pt.tecnico.uilib.menus.Menu.open(Menu.java:71)
	at hva.app.App.main(App.java:20)
*** expected/A-25-03-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-25-03-M-ok.out	Sat Oct 26 20:14:34 2024
      ZONE  1      
*** 16,41 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac1' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,48 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 54,69 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Identificador único do funcionário: Actos médicos de um veterinário: Operação inválida: O veterinário '0' não existe.
! Consultas
! 1 - Animais de um habitat
! 2 - Actos médicos num animal
! 3 - Actos médicos de um veterinário
! 4 - Vacinações com problemas
! 0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet2|E2
! REGISTO-VACINA|Vac2|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
--- 61,67 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
output differs from expected
                           A-25-04-M-ok.in                           
Running: Running: *** expected/A-25-04-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-25-04-M-ok.out	Sat Oct 26 20:14:34 2024
      ZONE  1      
*** 16,55 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA3'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA2'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,66 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 68,78 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
--- 79,85 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
output differs from expected
                           A-25-05-M-ok.in                           
Running: Running: *** expected/A-25-05-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-25-05-M-ok.out	Sat Oct 26 20:14:34 2024
      ZONE  1      
*** 16,55 ****
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac3' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac2' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Identificador da vacina: Identficador do veterinário a ministrar a vacina: Identificador único do animal: A vacina 'Vac3' não é apropiada para o animal 'AA1'.
! Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
--- 16,66 ----
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Número inválido!
! Escolha uma opção: Gestão de Vacinas
  1 - Visualizar todas as vacinas
  2 - Registar vacina
  3 - Vacinar animal
  4 - Mostrar vacinações
  0 - Sair
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
+ Escolha uma opção: Número inválido!
  Escolha uma opção: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
      ZONE  2      
*** 68,78 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet1|E1
! REGISTO-VACINA|Vac2|Vet2|E1
! REGISTO-VACINA|Vac3|Vet3|E1
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
--- 79,85 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
output differs from expected
                           A-25-06-M-ok.in                           
Running: Running: *** expected/A-25-06-M-ok.out	Sat Oct 26 12:46:25 2024
--- checked-out/075/075_A-25-06-M-ok.out	Sat Oct 26 20:14:34 2024
      ZONE  1      
*** 10,16 ****
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
--- 10,17 ----
  9 - Gestão de vacinas
  10 - Consultas
  0 - Sair
! Escolha uma opção: Ficheiro a abrir: Abrir ficheiro: Operação inválida: Problema ao abrir ficheiro: ap03.dat (No such file or directory)
! Menu Principal
  1 - Criar ficheiro
  2 - Abrir ficheiro
  3 - Guardar ficheiro
      ZONE  2      
*** 28,40 ****
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac1|Vet1|E1
! REGISTO-VACINA|Vac2|Vet1|E1
! REGISTO-VACINA|Vac3|Vet2|E2
! Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
--- 29,35 ----
  3 - Actos médicos de um veterinário
  4 - Vacinações com problemas
  0 - Sair
! Escolha uma opção: Consultas
  1 - Animais de um habitat
  2 - Actos médicos num animal
  3 - Actos médicos de um veterinário
output differs from expected