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.

45 lines
1.0 KiB

  1. #ifdef TEST
  2. #include <stdlib.h>
  3. #include "unity.h"
  4. #include "Input.h"
  5. void setUp(void) {
  6. }
  7. void tearDown(void) {
  8. }
  9. void test_getUserInput(void) {
  10. /*Bei dem benutzen dieser Funktion muss man mit free() den speicher wieder freigeben um memory leaks zu vermeiden
  11. Beispiel :
  12. char* input = getUserInput();
  13. if (input != NULL) {
  14. input wird hier benutzt
  15. free(input); damit wird der speicher wieder freigegeben wird
  16. */
  17. const char *test_input = "a1";
  18. FILE *tempInputFile;
  19. // Datei erstellen
  20. tempInputFile = fopen("temp_input.txt", "w");
  21. fprintf(tempInputFile, "%s\n", test_input);
  22. fclose(tempInputFile);
  23. // aus der Datei lesen um User input zu simulieren
  24. tempInputFile = freopen("temp_input.txt", "r", stdin);
  25. char *actual_input = getUserInput();
  26. TEST_ASSERT_EQUAL_STRING(test_input, actual_input);
  27. //Clean-up
  28. free(actual_input); // siehe kommentar in input.c
  29. fclose(tempInputFile);
  30. remove("temp_input.txt"); // Datei automatisch löschen
  31. }
  32. #endif // TEST