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.

152 lines
3.4 KiB

  1. #include "unity.h"
  2. #include "Spiellogik.h"
  3. #include "Umgebung.h"
  4. #include <stdlib.h>
  5. void setUp(void){
  6. }
  7. void tearDown(void){
  8. }
  9. void test_test1(void){
  10. int result = probe(2);
  11. TEST_ASSERT_EQUAL_INT(2, result);
  12. }
  13. //Tests für Funktion win
  14. //Testet ob die Schlange lang genug ist
  15. void test_win_SchlangegroesseAusreichend(void){
  16. int realU[N][N] = {0};
  17. realU[15][19] = (N*N)-1;
  18. int result = win(realU);
  19. TEST_ASSERT_EQUAL_INT(1, result);
  20. }
  21. //Test Schlange nicht lang genug
  22. void test_win_SchlangeNichtAusreichend(void){
  23. int realU[N][N] = {0};
  24. realU[15][5] = 15;
  25. int result = win(realU);
  26. TEST_ASSERT_EQUAL_INT(0, result);
  27. }
  28. //Tests für die Methode lose
  29. //Test der Methode lose mit einer Bewegung nach oben auf
  30. //ein freies Feld
  31. void test_lose_up_freiesFeld(void){
  32. int realU[20][20] = { 0 };
  33. realU[10][12] = 4;
  34. int result = lose(realU, 'u');
  35. TEST_ASSERT_EQUAL_INT(0, result);
  36. }
  37. //Test der Methode lose mit einer Bewegung nach oben auf
  38. //ein bereits belegtes Feld
  39. void test_lose_up_belegtesFeld(void){
  40. int realU[20][20] = { 0 };
  41. realU[10][12] = 4;
  42. realU[9][12] = 3;
  43. int result = lose(realU, 'u');
  44. TEST_ASSERT_EQUAL_INT(1, result);
  45. }
  46. //Test der Methode lose mit einer Bewegung nach oben ausserhalb
  47. //der Spielfeld Begrenzungen
  48. void test_lose_up_Obererrand(void){
  49. int realU[20][20] = { 0 };
  50. realU[0][12] = 4;
  51. int result = lose(realU, 'u');
  52. TEST_ASSERT_EQUAL_INT(1, result);
  53. }
  54. //Test der Methode lose mit einer Bewegung nach unten auf
  55. //ein freies Feld
  56. void test_lose_down_freiesFeld(void){
  57. int realU[20][20] = { 0 };
  58. realU[10][12] = 4;
  59. int result = lose(realU, 'd');
  60. TEST_ASSERT_EQUAL_INT(0, result);
  61. }
  62. //Test der Methode lose mit einer Bewegung nach unten auf
  63. //ein belegtes Feld
  64. void test_lose_down_belegtesFeld(void){
  65. int realU[20][20] = { 0 };
  66. realU[10][12] = 4;
  67. realU[11][12] = 3;
  68. int result = lose(realU, 'd');
  69. TEST_ASSERT_EQUAL_INT(1, result);
  70. }
  71. //Test der Methode lose mit einer Bewegung nach links auf
  72. //ein freies Feld
  73. void test_lose_left_freiesFeld(void){
  74. int realU[20][20] = { 0 };
  75. realU[5][12] = 4;
  76. int result = lose(realU, 'l');
  77. TEST_ASSERT_EQUAL_INT(0, result);
  78. }
  79. //Test der Methode lose mit einer Bewegung nach links auf
  80. //ein belegtes Feld
  81. void test_lose_left_belegtesFeld(void){
  82. int realU[20][20] = { 0 };
  83. realU[5][12] = 4;
  84. realU[5][11] = 3;
  85. int result = lose(realU, 'l');
  86. TEST_ASSERT_EQUAL_INT(1, result);
  87. }
  88. //Test der Methode lose mit einer Bewegung nach links über
  89. //den linken Spielfeldrand
  90. void test_lose_left_linkerRand(void){
  91. int realU[20][20] = { 0 };
  92. realU[5][0] = 4;
  93. int result = lose(realU, 'l');
  94. TEST_ASSERT_EQUAL_INT(1, result);
  95. }
  96. //Test der Methode lose mit einer Bewegung nach rechts auf
  97. //ein freies Feld
  98. void test_lose_right_freiesFeld(void){
  99. int realU[20][20] = { 0 };
  100. realU[5][12] = 4;
  101. int result = lose(realU, 'r');
  102. TEST_ASSERT_EQUAL_INT(0, result);
  103. }
  104. //Test der Methode lose mit einer Bewegung nach rechts auf
  105. //ein belegtes Feld
  106. void test_lose_right_belegtesFeld(void){
  107. int realU[20][20] = { 0 };
  108. realU[5][12] = 4;
  109. realU[5][13] = 3;
  110. int result = lose(realU, 'r');
  111. TEST_ASSERT_EQUAL_INT(1, result);
  112. }
  113. //Test der Methode lose mit einer Bewegung nach links über
  114. //den rechten Spielfeldrand
  115. void test_lose_right_rechterRand(void){
  116. int realU[20][20] = { 0 };
  117. realU[5][N] = 4;
  118. int result = lose(realU, 'l');
  119. TEST_ASSERT_EQUAL_INT(1, result);
  120. }