Test coverage: make LCOV ignore bug() and all calls to BUG()
[open-adventure.git] / misc.c
diff --git a/misc.c b/misc.c
index f05e51883c5e55dbab1a323f73e15cca6149e2b5..81f8e2b2bd4f0212d258495fb0bed42403a7501b 100644 (file)
--- a/misc.c
+++ b/misc.c
@@ -15,8 +15,11 @@ void* xmalloc(size_t size)
 {
     void* ptr = malloc(size);
     if (ptr == NULL) {
+        // LCOV_EXCL_START
+        // exclude from coverage analysis because we can't simulate an out of memory error in testing
         fprintf(stderr, "Out of memory!\n");
         exit(EXIT_FAILURE);
+        // LCOV_EXCL_STOP 
     }
     return (ptr);
 }
@@ -408,7 +411,7 @@ long vocab(long id, long init)
             lexeme = -1;
             if (init < 0)
                 return (lexeme);
-            BUG(REQUIRED_VOCABULARY_WORD_NOT_FOUND);
+            BUG(REQUIRED_VOCABULARY_WORD_NOT_FOUND); // LCOV_EXCL_LINE
         }
         if (init >= 0 && KTAB[i] / 1000 != init)
             continue;
@@ -419,7 +422,7 @@ long vocab(long id, long init)
             return (lexeme);
         }
     }
-    BUG(RAN_OFF_END_OF_VOCABULARY_TABLE);
+    BUG(RAN_OFF_END_OF_VOCABULARY_TABLE); // LCOV_EXCL_LINE
 }
 
 void juggle(long object)
@@ -687,10 +690,12 @@ void datime(long* d, long* t)
     *t = (long) tv.tv_usec;
 }
 
+// LCOV_EXCL_START
 void bug(enum bugtype num, const char *error_string)
 {
     fprintf(stderr, "Fatal error %d, %s.\n", num, error_string);
     exit(EXIT_FAILURE);
 }
+// LCOV_EXCL_STOP
 
 /* end */