From 383abf157b25b5bf91793db61688560b7c712016 Mon Sep 17 00:00:00 2001 From: Simon Ehrnsperger Date: Wed, 22 Oct 2025 11:22:42 +0000 Subject: [PATCH] =?UTF-8?q?Start=5FWindows/unit=5Ftests.c=20gel=C3=B6scht?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Start_Windows/unit_tests.c | 143 ------------------------------------- 1 file changed, 143 deletions(-) delete mode 100644 Start_Windows/unit_tests.c diff --git a/Start_Windows/unit_tests.c b/Start_Windows/unit_tests.c deleted file mode 100644 index 50a62cf..0000000 --- a/Start_Windows/unit_tests.c +++ /dev/null @@ -1,143 +0,0 @@ -#include -#include -#include -#include "unity.h" - -#include "input.h" -#include "game.h" - -// ANSI Escape Codes für Farben -// Hinweis: damit das in CLion mit der integrierten Konsole/Output funktioniert, muss man auf die Run-Config gehen und -// das Häkchen bei 'emulate terminal in the output console' setzen -// (s. auch: https://stackoverflow.com/questions/32742850/how-to-show-colored-console-output-in-clion) -#define RESET "\033[0m" -#define GREEN "\033[32m" -#define RED "\033[31m" -#define YELLOW "\033[33m" -#define CYAN "\033[36m" -#define BOLD "\033[1m" - -// Eine Funktion, um die Test-Ergebnisse zu färben -void print_test_result(int result) { - if (result == 0) { - // Test war erfolgreich - printf(GREEN "OK\n" RESET); - } else { - // Test ist fehlgeschlagen - printf(RED "FAILED\n" RESET); - } -} - -// ---------- Tests für input.c ---------- -void test_readWords_simple(void) { - FILE *f = fopen("testwords_simple.txt", "r"); - - char words[10][MAX_WORD_LEN]; - int count = readWords(f, words, 10); - fclose(f); - - TEST_ASSERT_EQUAL_INT(3, count); - TEST_ASSERT_EQUAL_STRING("APFEL", words[0]); - TEST_ASSERT_EQUAL_STRING("BANANE", words[1]); - TEST_ASSERT_EQUAL_STRING("KIWI", words[2]); -} - -void test_readWords_with_delimiters(void) { - FILE *f = fopen("testwords_delims.txt", "r"); - - char words[10][MAX_WORD_LEN]; - int count = readWords(f, words, 10); - fclose(f); - - TEST_ASSERT_EQUAL_INT(3, count); - TEST_ASSERT_EQUAL_STRING("HUND", words[0]); - TEST_ASSERT_EQUAL_STRING("KATZE", words[1]); - TEST_ASSERT_EQUAL_STRING("MAUS", words[2]); -} - -void test_readWords_empty_file(void) { - FILE *f = fopen("testwords_empty.txt", "r"); - - char words[10][MAX_WORD_LEN]; - int count = readWords(f, words, 10); - fclose(f); - - TEST_ASSERT_EQUAL_INT(0, count); -} - -// ---------- Tests für game.c ---------- -void test_createWordSalad_all_fit(void) { - char words[3][MAX_WORD_LEN] = {"CAT", "DOG", "MOUSE"}; - char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN]; - - int placed = createWordSalad(salad, 20, words, 3); - - TEST_ASSERT_EQUAL_INT(3, placed); - - // Sicherstellen, dass alle Felder gefüllt sind - for (int i = 0; i < 20; i++) { - for (int j = 0; j < 20; j++) { - TEST_ASSERT_GREATER_OR_EQUAL('A', salad[i][j]); - TEST_ASSERT_LESS_OR_EQUAL('Z', salad[i][j]); - } - } -} - -void test_createWordSalad_too_small(void) { - char words[2][MAX_WORD_LEN] = {"ELEPHANT", "GIRAFFE"}; - char salad[MAX_SEARCH_FIELD_LEN][MAX_SEARCH_FIELD_LEN]; - - int placed = createWordSalad(salad, 5, words, 2); - - TEST_ASSERT_GREATER_OR_EQUAL(0, placed); - TEST_ASSERT_LESS_OR_EQUAL(2, placed); - - // Feld muss vollständig gefüllt sein - for (int i = 0; i < 5; i++) { - for (int j = 0; j < 5; j++) { - TEST_ASSERT_GREATER_OR_EQUAL('A', salad[i][j]); - TEST_ASSERT_LESS_OR_EQUAL('Z', salad[i][j]); - } - } -} - -// ---------- Test Setup und TearDown Funktionen ---------- - -// Hier Setup- und TearDown-Funktionen definieren, -// falls Vor- und Nachbereitungen für die Tests benötigt. - -void setUp(void) { - FILE *f = fopen("testwords_delims.txt", "w"); - fprintf(f, "Hund,Katze; Maus\n"); - fclose(f); - - f = fopen("testwords_simple.txt", "w"); - fprintf(f, "Apfel\nBanane\nKiwi"); - fclose(f); - - f = fopen("testwords_empty.txt", "w"); - fclose(f); -} - -void tearDown(void) { - remove("testwords_delims.txt"); - remove("testwords_simple.txt"); - remove("testwords_empty.txt"); -} - -// ---------- Test Runner ---------- - -int main(void) { - UNITY_BEGIN(); - - RUN_TEST(test_readWords_simple); - RUN_TEST(test_readWords_with_delimiters); - RUN_TEST(test_readWords_empty_file); - RUN_TEST(test_createWordSalad_all_fit); - RUN_TEST(test_createWordSalad_too_small); - - int result = UNITY_END(); // Test-Ergebnisse - print_test_result(result); - - return result; -}