From 4e46e25a507c6b6a7497adfc8ec9f9ab6e14addc Mon Sep 17 00:00:00 2001 From: solar Date: Sun, 20 Nov 2005 16:30:23 +0000 Subject: [PATCH] Added test driver. --- Makefile | 12 ++++-------- functions/string/memchr.c | 12 +++++++++--- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/Makefile b/Makefile index 71f2c1e..9500604 100644 --- a/Makefile +++ b/Makefile @@ -8,13 +8,10 @@ TSTFILES := $(patsubst %.c,%.t,$(SRCFILES)) DEPFILES := $(patsubst %.c,%.d,$(SRCFILES)) ALLFILES := $(SRCFILES) $(HDRFILES) $(AUXFILES) -CPPFLAGS := -MMD -MP -CFLAGS := -g -std=c99 -I./internals/ - .PHONY: all clean dist all: $(OBJFILES) - ar r pdclib.a $(OBJFILES) + ar r pdclib.a $? test: $(TSTFILES) -@rc=0; for file in $(TSTFILES); do ./$$file; rc=`expr $$rc + $$?`; done; echo; echo "Tests failed: $$rc" @@ -22,14 +19,13 @@ test: $(TSTFILES) -include $(DEPFILES) clean: - -@for file in $(OBJFILES) $(DEPFILES) pdclib.a; do if [ -f $$file ]; then rm $$file; fi; done + -@for file in $(OBJFILES) $(DEPFILES) $(TSTFILES) pdclib.a; do if [ -f $$file ]; then rm $$file; fi; done dist: @tar czf pdclib.tgz $(ALLFILES) %.o: %.c Makefile - $(CC) -DNDEBUG -c $(CPPFLAGS) $(CFLAGS) $< -o $@ + $(CC) -DNDEBUG -MMD -MP -MT "$*.d $*.t" -g -std=c99 -I./internals -c $< -o $@ %.t: %.c Makefile - $(CC) -DTEST $(CFLAGS) $< -o $@ - + $(CC) -DTEST -std=c99 -I./internals/ $< -o $@ diff --git a/functions/string/memchr.c b/functions/string/memchr.c index 1e8ff70..75809e0 100644 --- a/functions/string/memchr.c +++ b/functions/string/memchr.c @@ -24,11 +24,17 @@ void * memchr( const void * s, int c, size_t n ) return NULL; } -#warning Test driver missing. - #ifdef TEST +#include <_PDCLIB_test.h> + int main() { - return 0; + BEGIN_TESTS; + TESTCASE( memchr( abcde, 'c', 5 ) == &abcde[2] ); + TESTCASE( memchr( abcde, 'a', 1 ) == &abcde[0] ); + TESTCASE( memchr( abcde, 'a', 0 ) == NULL ); + TESTCASE( memchr( abcde, '\0', 5 ) == NULL ); + TESTCASE( memchr( abcde, '\0', 6 ) == &abcde[5] ); + return TEST_RESULTS; } #endif -- 2.40.0