#ifdef TEST

#include "unity.h"

#include "WortSpiel.h"

void setUp(void)
{
}

void tearDown(void)
{
}

void testLoescheBuchstaben_Buchstabeexistiert(void) {
    // Testfall 1: Buchstabe existiert im Wort
    char wort1[] = "Beispiel";
    loescheBuchstaben(wort1, 'i');
    TEST_ASSERT_EQUAL_STRING("Bespel", wort1);
}

void testLoescheBuchstaben_Buchstabeexistiertnicht(void) {
    char wort2[] = "Test";
    loescheBuchstaben(wort2, 'z');
    TEST_ASSERT_EQUAL_STRING("Test", wort2);
}

void testLoescheBuchstaben_Leereswort(void) {
  char wort3[] = "";
    loescheBuchstaben(wort3, 'a');
    TEST_ASSERT_EQUAL_STRING("", wort3);
}  

void testZaehleBuchstaben_Buchstabenexistiert(void) {
    // Testfall 1: Buchstabe existiert im Wort
    char wort1[] = "Beispiel";
    int anzahl1 = zaehleBuchstaben(wort1, 'i');
    TEST_ASSERT_EQUAL_INT(2, anzahl1);
}

void testZaehleBuchstaben_Buchstabenexistiertnicht(void) {
    char wort2[] = "Test";
    int anzahl2 = zaehleBuchstaben(wort2, 'z');
    TEST_ASSERT_EQUAL_INT(0, anzahl2);
}

void testZaehleBuchstaben_Leereswort(void) {
    char wort2[] = "Test";
    int anzahl2 = zaehleBuchstaben(wort2, 'z');
    TEST_ASSERT_EQUAL_INT(0, anzahl2);
}

void testUmdrehenWort_normalesWort(void) {
    // Testfall 1: Umdrehen eines normalen Wortes
    char wort1[] = "Hello";
    umdrehenWort(wort1);
    TEST_ASSERT_EQUAL_STRING("olleH", wort1);
}

void testUmdrehenWort_leeresWort(void) {
    char wort2[] = "";
    umdrehenWort(wort2);
    TEST_ASSERT_EQUAL_STRING("", wort2);
}

void testUmdrehenWort_einBuchstabe(void) {
    char wort3[] = "A";
    umdrehenWort(wort3);
    TEST_ASSERT_EQUAL_STRING("A", wort3);
}

void testSucheBuchstabe_existiert(void) {
    char wort1[] = "Programming";
    int position = sucheBuchstabe(wort1, 'g');
    TEST_ASSERT_EQUAL_INT(3, position);

}

void testSucheBuchstabe_existiertnicht(void) {
    char wort2[] = "Testing";
    int position = sucheBuchstabe(wort2, 'z');
    TEST_ASSERT_EQUAL_INT(-1, position);
}

void testSucheBuchstabe_leeresWort(void) {
    char wort3[] = "";
    int position = sucheBuchstabe(wort3, 'a');
    TEST_ASSERT_EQUAL_INT(-1, position);
}



#endif // TEST