|
@@ -0,0 +1,75 @@
|
|
|
+/* Copyright 2001,2002 Roger Dingledine, Matej Pfajfar. */
|
|
|
+/* See LICENSE for licensing information */
|
|
|
+/* $Id$ */
|
|
|
+
|
|
|
+#ifndef __TEST_H
|
|
|
+#define __TEST_H
|
|
|
+
|
|
|
+#define test_fail() \
|
|
|
+ if (1) { \
|
|
|
+ printf("\nFile %s: line %d (%s): assertion failed.", \
|
|
|
+ __FILE__, \
|
|
|
+ __LINE__, \
|
|
|
+ __PRETTY_FUNCTION__); \
|
|
|
+ return; \
|
|
|
+ }
|
|
|
+
|
|
|
+#define test_assert(expr) \
|
|
|
+ if(expr) { printf("."); } else { \
|
|
|
+ printf("\nFile %s: line %d (%s): assertion failed: (%s)\n", \
|
|
|
+ __FILE__, \
|
|
|
+ __LINE__, \
|
|
|
+ __PRETTY_FUNCTION__, \
|
|
|
+ #expr); \
|
|
|
+ return; \
|
|
|
+ }
|
|
|
+
|
|
|
+#define test_eq(expr1, expr2) \
|
|
|
+ if(expr1==expr2) { printf("."); } else { \
|
|
|
+ printf("\nFile %s: line %d (%s): Assertion failed: (%s==%s)\n"\
|
|
|
+ " (%ld != %ld)\n", \
|
|
|
+ __FILE__, \
|
|
|
+ __LINE__, \
|
|
|
+ __PRETTY_FUNCTION__, \
|
|
|
+ #expr1, #expr2, \
|
|
|
+ (long)expr1, (long)expr2); \
|
|
|
+ return; \
|
|
|
+ }
|
|
|
+
|
|
|
+#define test_neq(expr1, expr2) \
|
|
|
+ if(expr1!=expr2) { printf("."); } else { \
|
|
|
+ printf("\nFile %s: line %d (%s): Assertion failed: (%s!=%s)\n"\
|
|
|
+ " (%ld == %ld)\n", \
|
|
|
+ __FILE__, \
|
|
|
+ __LINE__, \
|
|
|
+ __PRETTY_FUNCTION__, \
|
|
|
+ #expr1, #expr2, \
|
|
|
+ (long)expr1, (long)expr2); \
|
|
|
+ return; \
|
|
|
+ }
|
|
|
+
|
|
|
+#define test_streq(expr1, expr2) \
|
|
|
+ if(!strcmp(expr1,expr2)) { printf("."); } else { \
|
|
|
+ printf("\nFile %s: line %d (%s): Assertion failed: (%s==%s)\n"\
|
|
|
+ " (%s != %s)\n", \
|
|
|
+ __FILE__, \
|
|
|
+ __LINE__, \
|
|
|
+ __PRETTY_FUNCTION__, \
|
|
|
+ #expr1, #expr2, \
|
|
|
+ (long)expr1, (long)expr2); \
|
|
|
+ return; \
|
|
|
+ }
|
|
|
+
|
|
|
+#define test_strneq(expr1, expr2) \
|
|
|
+ if(strcmp(expr1,expr2)) { printf("."); } else { \
|
|
|
+ printf("\nFile %s: line %d (%s): Assertion failed: (%s!=%s)\n"\
|
|
|
+ " (%s == %s)\n", \
|
|
|
+ __FILE__, \
|
|
|
+ __LINE__, \
|
|
|
+ __PRETTY_FUNCTION__, \
|
|
|
+ #expr1, #expr2, \
|
|
|
+ expr1, expr2); \
|
|
|
+ return; \
|
|
|
+ }
|
|
|
+
|
|
|
+#endif
|