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.

60 lines
1.8 KiB

  1. package de.fd.fh;
  2. import org.junit.jupiter.api.Test;
  3. import static org.junit.jupiter.api.Assertions.*;
  4. class FigureFarmerTest
  5. {
  6. Figure[] field = new Figure[Figure.fieldLength * Figure.fieldLength];
  7. // weißer Bauer
  8. @Test
  9. void whiteFarmerValidDestination()
  10. {
  11. int src = Figure.fieldLength * 6 + 0;
  12. int dst = Figure.fieldLength * 5 + 0;
  13. Figure f = new FigureFarmer(FigureFarmer.Color.White);
  14. assertTrue(f.moveAllowed(src, dst, field));
  15. }
  16. @Test
  17. void whiteFarmerInvalidDestinationDown() // statt nach "oben" wird nach "unten" gegangen
  18. {
  19. int src = Figure.fieldLength * 6 + 0;
  20. int dst = Figure.fieldLength * 7 + 0;
  21. Figure f = new FigureFarmer(FigureFarmer.Color.White);
  22. assertFalse(f.moveAllowed(src, dst, field));
  23. }
  24. @Test
  25. void whiteFarmerInvalidDestinationUp() // mehr als 1 Schritt nach "oben"
  26. {
  27. int src = Figure.fieldLength * 6 + 0;
  28. int dst = Figure.fieldLength * 4 + 0;
  29. Figure f = new FigureFarmer(FigureFarmer.Color.White);
  30. assertFalse(f.moveAllowed(src, dst, field));
  31. }
  32. @Test
  33. void checkMoveWithValidDestinationVar2() // Bauer (w) steht in der Mitte vom Feld und geht 1 nach oben
  34. {
  35. int src = Figure.fieldLength * 4 + 4;
  36. int dst = Figure.fieldLength * 3 + 4;
  37. Figure f = new FigureFarmer(FigureFarmer.Color.White);
  38. assertTrue(f.moveAllowed(src, dst, field));
  39. }
  40. @Test
  41. void whiteFarmerInvalidDestinationDownVar2() // Bauer (w) steht in der Mitte vom Feld und geht 1 nach unten
  42. {
  43. int src = Figure.fieldLength * 4 + 4;
  44. int dst = Figure.fieldLength * 5 + 4;
  45. Figure f = new FigureFarmer(FigureFarmer.Color.White);
  46. assertFalse(f.moveAllowed(src, dst, field));
  47. }
  48. }