diff options
author | Carl Worth <cworth@cworth.org> | 2010-05-10 16:21:10 -0700 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2010-05-10 16:21:10 -0700 |
commit | e8c790b3ceab06eb0433c3a234d3e16980f7ef19 (patch) | |
tree | 1513d85cfb33696fa88726b42e2a5623df079abc | |
parent | 0b27b5f05191f07ed31e65ff07e5233672f3c33a (diff) |
Add a very simple test for the pre-processor.
Validate desired test cases by ensuring the output of glcpp matches
the output of the gcc preprocessor, (ignoring any lines of the gcc
output beginning with '#').
Only one test case so far with a trivial #define.
-rw-r--r-- | .gitignore | 3 | ||||
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | tests/001-define.c | 2 | ||||
-rwxr-xr-x | tests/glcpp-test | 9 |
4 files changed, 18 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore index 5bbd660f22..d67bd38c93 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,6 @@ glcpp-parse.c glcpp-parse.h *.o *~ +tests/*.expected +tests/*.gcc +tests/*.out @@ -10,5 +10,9 @@ glcpp: glcpp.o glcpp-lex.o glcpp-parse.o hash_table.o glcpp-lex.c: glcpp-parse.h +test: + @(cd tests; ./glcpp-test) + clean: rm -f glcpp-lex.c glcpp-parse.c *.o *~ + rm -f tests/*.out tests/*.gcc tests/*.expected diff --git a/tests/001-define.c b/tests/001-define.c new file mode 100644 index 0000000000..cbf2fee0e7 --- /dev/null +++ b/tests/001-define.c @@ -0,0 +1,2 @@ +#define foo 1 +foo diff --git a/tests/glcpp-test b/tests/glcpp-test new file mode 100755 index 0000000000..25685eeabe --- /dev/null +++ b/tests/glcpp-test @@ -0,0 +1,9 @@ +#!/bin/sh + +for test in *.c; do + echo "Testing $test" + ../glcpp < $test > $test.out + gcc -E $test -o $test.gcc + grep -v '^#' < $test.gcc > $test.expected + diff -u $test.expected $test.out +done |