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.

LifeTest.java 1.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import org.junit.Test;
  2. import static org.junit.Assert.*;
  3. public class LifeTest {
  4. @Test
  5. public void createNewCell() {
  6. // Arrange: drei lebende Zellen
  7. Life l = new Life();
  8. l.setAlive(0, 0);
  9. l.setAlive(0, 1);
  10. l.setAlive(0, 2);
  11. // Act: Berechnung der Folgegeneration
  12. l.nextGeneration();
  13. // Assert: Rasterpunkt mit drei Nachbarn sollte jetzt leben
  14. assertTrue(l.isAlive(1, 1));
  15. }
  16. @Test
  17. public void destroyLonelyCell() {
  18. //Lebende Zellen mit weniger als zwei lebenden Nachbarn sterben in der Folgegeneration an Einsamkeit.
  19. // Arrange: drei lebende Zellen
  20. Life l = new Life();
  21. l.setAlive(0, 0);
  22. l.setAlive(0, 1);
  23. l.setAlive(0, 2);
  24. // Act: Berechnung der Folgegeneration
  25. l.nextGeneration();
  26. // Assert: Rasterpunkt mit weniger als zwei Nachbarn sollte sterben
  27. assertFalse(l.isAlive(0, 0));
  28. }
  29. @Test
  30. public void keepAliveCell() {
  31. //Eine lebende Zelle mit zwei oder drei lebenden Nachbarn bleibt in der Folgegeneration am Leben.
  32. // Arrange: drei lebende Zellen
  33. Life l = new Life();
  34. l.setAlive(0, 0);
  35. l.setAlive(0, 1);
  36. l.setAlive(0, 2);
  37. // Act: Berechnung der Folgegeneration
  38. l.nextGeneration();
  39. // Assert: Rasterpunkt mit zwei oder 3 lebenden Nachbarn bleibt am Leben
  40. assertTrue(l.isAlive(0, 1));
  41. }
  42. @Test
  43. public void destroyCrowdedCell() {
  44. }
  45. }