summaryrefslogtreecommitdiff
path: root/test/assert/assert.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/assert/assert.c')
-rw-r--r--test/assert/assert.c29
1 files changed, 20 insertions, 9 deletions
diff --git a/test/assert/assert.c b/test/assert/assert.c
index 6d474ccc2..866c362f0 100644
--- a/test/assert/assert.c
+++ b/test/assert/assert.c
@@ -24,26 +24,37 @@
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
+#include <signal.h>
+#include "../testsuite.h"
+int got_abort;
-int main( int argc, char **argv)
+void aborthandler(int junk)
{
+ got_abort=1;
+}
- printf( "Testing functions defined in assert.h\n");
+int main( int argc, char **argv)
+{
+ signal(SIGABRT, aborthandler);
+
+ init_testsuite("Testing functions defined in assert.h:\n\t");
- printf( "Testing \"assert(0==0)\"\n");
+ got_abort=0;
assert(0==0);
+ TEST_NUMERIC(got_abort, 0);
- printf( "Testing \"assert(0==1)\" with NDEBUG disabled\n");
-#undef NDEBUG
+#define NDEBUG
+ got_abort=0;
+ printf("Don't worry -- This next test is supposed to print an assert message:\n");
+ fprintf(stderr, "\t");
assert(0==1);
+ TEST_NUMERIC(got_abort, 0);
-#define NDEBUG
- printf( "Testing \"assert(0==1)\" with NDEBUG enabled\n");
#undef NDEBUG
+ got_abort=0;
assert(0==1);
-
- printf( "Finished testing assert.h\n");
+ TEST_NUMERIC(got_abort, 1);
exit(0);
}