You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

LifeTestMitte.java 2.0KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. import org.junit.Test;
  2. import static org.junit.Assert.*;
  3. public class LifeTestMitte {
  4. @Test
  5. public void createNewCell() {
  6. // Arrange: drei lebende Zellen
  7. Life l = new Life();
  8. l.setAlive(2, 0);
  9. l.setAlive(2, 1);
  10. l.setAlive(2, 2);
  11. l.printWelt();
  12. // Act: Berechnung der Folgegeneration
  13. ILife nextGen = l.nextGeneration();
  14. nextGen.printWelt();
  15. // Assert: Rasterpunkt mit drei Nachbarn sollte jetzt leben
  16. assertTrue(nextGen.isAlive(1, 1));
  17. assertTrue(nextGen.isAlive(2, 1));
  18. assertTrue(nextGen.isAlive(3, 1));
  19. }
  20. @Test
  21. public void destroyLonelyCell() {
  22. // Arrange: drei lebende Zellen
  23. Life l = new Life();
  24. l.setAlive(2, 1);
  25. // Act: Berechnung der Folgegeneration
  26. ILife nextGen = l.nextGeneration();
  27. nextGen.printWelt();
  28. // Assert: Rasterpunkt ohne Nachbarn sollte jetzt tot sein
  29. assertTrue(nextGen.isDead(2, 1));
  30. }
  31. @Test
  32. public void keepAliveCell() {
  33. // Arrange: drei lebende Zellen
  34. Life l = new Life();
  35. l.setAlive(2, 0);
  36. l.setAlive(2, 1);
  37. l.setAlive(2, 2);
  38. l.printWelt();
  39. // Act: Berechnung der Folgegeneration
  40. ILife nextGen = l.nextGeneration();
  41. nextGen.printWelt();
  42. // Assert: Rasterpunkt mit drei Nachbarn sollte jetzt leben
  43. assertTrue(nextGen.isAlive(2, 1));
  44. }
  45. @Test
  46. public void destroyCrowdedCell() {
  47. // Arrange: drei lebende Zellen
  48. Life l = new Life();
  49. l.setAlive(2, 0);
  50. l.setAlive(1, 0);
  51. l.setAlive(2, 1);
  52. l.setAlive(2, 2);
  53. l.setAlive(1, 1);
  54. l.printWelt();
  55. // Act: Berechnung der Folgegeneration
  56. ILife nextGen = l.nextGeneration();
  57. nextGen.printWelt();
  58. // Assert: Rasterpunkt mit drei Nachbarn sollte jetzt leben
  59. assertTrue(nextGen.isDead(2, 1));
  60. assertTrue(nextGen.isDead(1, 1));
  61. }
  62. }