summaryrefslogtreecommitdiff
path: root/test/test.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/test.cc')
-rw-r--r--test/test.cc26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/test.cc b/test/test.cc
new file mode 100644
index 0000000..13bad95
--- /dev/null
+++ b/test/test.cc
@@ -0,0 +1,26 @@
+#include <stdio.h>
+#include <stdlib.h>
+
+static int succeeded;
+static int failed;
+
+void log_test(bool predicate, const char *file, int line, const char *message)
+{
+ if (predicate)
+ {
+ succeeded++;
+ return;
+ }
+ failed++;
+ printf("Test failed: %s:%d: %s\n", file, line, message);
+}
+
+static void log_totals(void)
+{
+ printf("\n%d tests, %d passed, %d failed\n", succeeded+failed, succeeded, failed);
+}
+
+static void __attribute__((constructor)) init(void)
+{
+ atexit(log_totals);
+}