From 9e430bbd282a29f0573023b94a3f9173265f624d Mon Sep 17 00:00:00 2001 From: fdai7492 Date: Fri, 2 Feb 2024 03:02:36 +0000 Subject: [PATCH] Mehr Tests, Anton Lohrey --- test/test_Springer.c | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/test/test_Springer.c b/test/test_Springer.c index 790a465..88e5fcd 100644 --- a/test/test_Springer.c +++ b/test/test_Springer.c @@ -10,8 +10,35 @@ void test_istzugerlaubt_Springer_LegalMove(void) { char **Brett = Schachbrett_erstellen(); - // Teste legaler Zug für weißen Springer : b1 zu a3 + // Viele Test um legale Züge zu prüfen TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 1, 0, 0, 2, PLAYER_WHITE)); + TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 1, 0, 2, 2, PLAYER_WHITE)); + TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 4, 3, 3, 5, PLAYER_WHITE)); + TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 4, 3, 2, 2, PLAYER_WHITE)); + TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 4, 3, 6, 2, PLAYER_BLACK)); + TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 6, 7, 5, 5, PLAYER_BLACK)); + TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 6, 7, 7, 5, PLAYER_BLACK)); + TEST_ASSERT_TRUE(istzugerlaubt_Springer(Brett, 4, 3, 5, 5, PLAYER_BLACK)); + + Schachbrettspeicher_freigeben(Brett); +} +void test_istzugerlaubt_Springer_IllegalMove(void) { + char **Brett = Schachbrett_erstellen(); + + // Landet auf eigener Figur + TEST_ASSERT_FALSE(istzugerlaubt_Springer(Brett, 6, 7, 4, 6, PLAYER_BLACK)); + TEST_ASSERT_FALSE(istzugerlaubt_Springer(Brett, 1, 7, 3, 6, PLAYER_BLACK)); + TEST_ASSERT_FALSE(istzugerlaubt_Springer(Brett, 6, 0, 4, 1, PLAYER_WHITE)); + TEST_ASSERT_FALSE(istzugerlaubt_Springer(Brett, 1, 0, 3, 1, PLAYER_WHITE)); + + // versucht sich geradeaus zu bewegen + TEST_ASSERT_FALSE(istzugerlaubt_Springer(Brett, 1, 0, 1, 3, PLAYER_WHITE)); + + // Versucht Diagonal zu bewegen + TEST_ASSERT_FALSE(istzugerlaubt_Springer(Brett, 7, 0, 6, 1, PLAYER_WHITE)); + + // Vom Brett springen + TEST_ASSERT_FALSE(istzugerlaubt_Springer(Brett, 7, 0, 8, 2, PLAYER_WHITE)); Schachbrettspeicher_freigeben(Brett); }