Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.52 KB | None | 0 0
  1. package inf319;
  2.  
  3. import static org.junit.Assert.*;
  4.  
  5. import org.junit.BeforeClass;
  6. import org.junit.AfterClass;
  7. import org.junit.Test;
  8.  
  9. public class TestCafeteira {
  10.  
  11. private static Hardware hardware;
  12. private static Cafeteira cafeteira;
  13.  
  14. @BeforeClass
  15. public static void upCafeteira() {
  16.  
  17.  
  18. /** Instantiate a hardware and a coffee maker.
  19. * Recall that the coffee maker has not a graphical interface
  20. * because the hardware has been built with the hasIHC attribute
  21. * set to false.
  22. */
  23.  
  24. hardware = new Hardware(false);
  25. cafeteira = new Cafeteira(hardware);
  26.  
  27. /**
  28. * Emulate the pressing of the Liga button.
  29. */
  30. hardware.pressionaBotao();
  31.  
  32. assertTrue(cafeteira.getEstadoIHC().equals(EstadoIHC.naoFazendo));
  33. assertTrue(cafeteira.getEstadoAquecedor().equals(EstadoAquecedor.naoAquecendo));
  34. assertTrue(cafeteira.getEstadoVaporizador().equals(EstadoVaporizador.naoFazendo));
  35.  
  36. }
  37.  
  38. @Test
  39. public void normalFlow() {
  40. // Place water in jar.
  41. hardware.ajustaNivelDeAgua(10);
  42.  
  43. // Initial run of the coffee maker.
  44. cafeteira.executa();
  45. assertEquals(EstadoIHC.fazendo, cafeteira.getEstadoIHC());
  46. assertEquals(EstadoAquecedor.fazendoJarVazia, cafeteira.getEstadoAquecedor());
  47. assertEquals(EstadoVaporizador.vaporizando, cafeteira.getEstadoVaporizador());
  48.  
  49. // Next, execute the hardware.
  50. hardware.executa();
  51. hardware.executa();
  52.  
  53. // After two executions of the hardware, the coffee maker should have
  54. assertEquals(8, hardware.pegaNivelDeAgua());
  55. assertEquals(2, hardware.pegaNivelDeCafe());
  56.  
  57. // Invariant: volume(water + coffee) is constant.
  58. assertEquals(10, hardware.pegaNivelDeAgua()+ hardware.pegaNivelDeCafe());
  59.  
  60. cafeteira.executa();
  61. assertEquals(EstadoIHC.fazendo, cafeteira.getEstadoIHC());
  62. assertEquals(EstadoAquecedor.fazendoAquecendo, cafeteira.getEstadoAquecedor());
  63. assertEquals(EstadoVaporizador.vaporizando, cafeteira.getEstadoVaporizador());
  64.  
  65. hardware.executa();
  66. hardware.executa();
  67. assertEquals(6, hardware.pegaNivelDeAgua());
  68. assertEquals(4, hardware.pegaNivelDeCafe());
  69. assertEquals(10, hardware.pegaNivelDeAgua()+ hardware.pegaNivelDeCafe());
  70.  
  71. assertEquals(EstadoIHC.fazendo, cafeteira.getEstadoIHC());
  72. assertEquals(EstadoAquecedor.fazendoAquecendo, cafeteira.getEstadoAquecedor());
  73. assertEquals(EstadoVaporizador.vaporizando, cafeteira.getEstadoVaporizador());
  74.  
  75. // insira aqui a sequencia de asserções necessárias para finalizar
  76. // o teste funcional da cafeteira.
  77.  
  78. /**
  79. * Esse caso de teste verifica o funcionamento da valvula
  80. */
  81. hardware.executa();
  82. assertEquals(5, hardware.pegaNivelDeAgua());
  83. assertEquals(5, hardware.pegaNivelDeCafe());
  84. assertEquals(EstadoIHC.fazendo, cafeteira.getEstadoIHC());
  85. assertEquals(EstadoHardware.ehValvulaFechada, hardware.leEstadoValvulaPressao());
  86. hardware.removeJarra();
  87. cafeteira.executa();
  88. assertEquals(EstadoHardware.ehValvulaAberta, hardware.leEstadoValvulaPressao());
  89.  
  90. // Verifica se valvula fechou corretamente depois de abrir
  91. hardware.colocaJarra();
  92. cafeteira.executa();
  93. assertEquals(EstadoHardware.ehValvulaFechada, hardware.leEstadoValvulaPressao());
  94. assertEquals(EstadoHardware.ehAquecedorLigado, hardware.leEstadoElementoAquecedor());
  95. assertEquals(EstadoHardware.ehEbulidorLigado, hardware.leEstadoElementoEbulidor());
  96.  
  97. // Verifica se a cafeteira funcionou normal dps de remover a jarra
  98. hardware.executa();
  99. assertEquals(4, hardware.pegaNivelDeAgua());
  100. assertEquals(6, hardware.pegaNivelDeCafe());
  101.  
  102. hardware.executa();
  103. hardware.executa();
  104. hardware.executa();
  105. assertEquals(1, hardware.pegaNivelDeAgua());
  106. assertEquals(9, hardware.pegaNivelDeCafe());
  107.  
  108. // Ao terminar de fazer café
  109. hardware.executa();
  110. assertEquals(0, hardware.pegaNivelDeAgua());
  111. assertEquals(10, hardware.pegaNivelDeCafe());
  112. cafeteira.executa();
  113.  
  114. assertEquals(EstadoHardware.ehEbulidorDesligado, hardware.leEstadoElementoEbulidor());
  115. assertEquals(EstadoHardware.ehValvulaFechada, hardware.leEstadoValvulaPressao());
  116. assertEquals(EstadoHardware.ehAquecedorLigado, hardware.leEstadoElementoAquecedor());
  117. assertEquals(EstadoHardware.ehIndicadoraLigada, hardware.leEstadoLuzIndicadora());
  118.  
  119. // Testa ver se a maquina tenta fazer café sem agua
  120. hardware.executa();
  121. assertEquals(0, hardware.pegaNivelDeAgua());
  122. assertEquals(10, hardware.pegaNivelDeCafe());
  123.  
  124.  
  125. }
  126.  
  127. @Test
  128. public void exceptionalFlow() {
  129.  
  130. }
  131.  
  132. @AfterClass
  133. public static void downCafeteira() {
  134. hardware = null;
  135. cafeteira = null;
  136. }
  137.  
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement