Browse Source

Test für Schach durch Turm, Anton Lohrey

remotes/origin/Läufer-fertig,-Hendrik-Voß
fdai7492 11 months ago
parent
commit
0a591aab0d
  1. 43
      test/test_imSchachstehen.c

43
test/test_imSchachstehen.c

@ -62,4 +62,47 @@ void test_SchachDurchBauer(void) {
freeTestBrett(Brett);
}
void test_SchachDurchTurm(void) {
char** Brett = ErstelleTestBrett();
// Weißer König wird von schwarzen Turm bedroht (Horizontal)
Brett[4][4] = 'K';
Brett[4][7] = 'r';
TEST_ASSERT_TRUE(istKoenigImSchach(Brett, PLAYER_WHITE));
freeTestBrett(Brett);
Brett = ErstelleTestBrett();
// Weißer König wird von schwarzen Turm bedroht (Vertikal)
Brett[4][4] = 'K';
Brett[0][4] = 'r';
TEST_ASSERT_TRUE(istKoenigImSchach(Brett, PLAYER_WHITE));
freeTestBrett(Brett);
Brett = ErstelleTestBrett();
// Schwarzer König wird von weißen Turm bedroht (Horizontal)
Brett[3][3] = 'k';
Brett[3][0] = 'R';
TEST_ASSERT_TRUE(istKoenigImSchach(Brett, PLAYER_BLACK));
freeTestBrett(Brett);
Brett = ErstelleTestBrett();
// Schwarzer König wird nicht bedroht weil er von einer Figur beschützt wird
Brett[3][3] = 'k';
Brett[3][1] = 'R';
Brett[3][2] = 'p';
TEST_ASSERT_FALSE(istKoenigImSchach(Brett, PLAYER_BLACK));
freeTestBrett(Brett);
Brett = ErstelleTestBrett();
// Weißer König nicht in gefahr
Brett[4][4] = 'K';
Brett[5][5] = 'r';
TEST_ASSERT_FALSE(istKoenigImSchach(Brett, PLAYER_WHITE));
freeTestBrett(Brett);
}
#endif // TEST
Loading…
Cancel
Save