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.

64 lines
1.8 KiB

  1. package de.fd.fh;
  2. import org.junit.jupiter.api.Test;
  3. import static org.hamcrest.MatcherAssert.assertThat;
  4. import static org.junit.jupiter.api.Assertions.*;
  5. class GameTest
  6. {
  7. @Test
  8. void newGameInitializationCorrectField()
  9. {
  10. Game g = new Game();
  11. g.initNewGame();
  12. assertEquals(Figure.fieldLength * Figure.fieldLength, g.mField.length);
  13. }
  14. // prüft, ob Figuren nach Initialisierung nur an vorgesehenden Positionen stehen
  15. @Test
  16. void newGameInitializationFigurePositions()
  17. {
  18. Game g = new Game();
  19. g.initNewGame();
  20. for (int i = 0; i < Figure.fieldLength; i++) // row
  21. {
  22. for (int j = 0; j < Figure.fieldLength; j++) // col
  23. {
  24. if (i == Game.whiteRowOther
  25. || i == Game.whiteRowFarmer
  26. || i == Game.blackRowOther
  27. || i == Game.blackRowFarmer)
  28. {
  29. assertNotEquals(null, g.mField[i * Figure.fieldLength + j]);
  30. }
  31. else
  32. {
  33. assertEquals(null, g.mField[i * Figure.fieldLength + j]);
  34. }
  35. }
  36. }
  37. }
  38. @Test
  39. void newGameInitializationFigurePositionsFarmer()
  40. {
  41. Game g = new Game();
  42. g.initNewGame();
  43. // weiße Bauern
  44. for (int j = 0; j < Figure.fieldLength; j++) // col
  45. {
  46. assertEquals(new FigureFarmer().getClass(),
  47. g.mField[Game.whiteRowFarmer * Figure.fieldLength + j].getClass());
  48. }
  49. // schwarze Bauern
  50. for (int j = 0; j < Figure.fieldLength; j++) // col
  51. {
  52. assertEquals(new FigureFarmer().getClass(),
  53. g.mField[Game.blackRowFarmer * Figure.fieldLength + j].getClass());
  54. }
  55. }
  56. }