[gegl] tests/buffer: Another try at 'Make buffer tests work during distcheck'



commit fb6b8b851f0180d69434364452e706a04ebfe15e
Author: Martin Nordholts <martinn src gnome org>
Date:   Fri Jul 23 18:27:28 2010 +0200

    tests/buffer: Another try at 'Make buffer tests work during distcheck'

 tests/buffer/Makefile.am             |   12 ++++++++----
 tests/buffer/buffer-tests-results.sh |    6 +++++-
 2 files changed, 13 insertions(+), 5 deletions(-)
---
diff --git a/tests/buffer/Makefile.am b/tests/buffer/Makefile.am
index 959ea25..c5511f9 100644
--- a/tests/buffer/Makefile.am
+++ b/tests/buffer/Makefile.am
@@ -6,6 +6,8 @@ SUBDIRS = \
 TESTS = buffer-tests-results.sh
 buffer-tests-results.sh: buffer-tests-report
 
+TESTS_ENVIRONMENT = REFERENCE_DIR=$(top_srcdir)/tests/buffer/reference
+
 EXTRA_DIST = buffer-tests-results.sh
 
 # Always build buffer-test to catch compilation problems early
@@ -32,7 +34,7 @@ buffer_test_LDADD = 						\
 buffer-tests.inc: $(buffer_test_SOURCES) Makefile.am $(top_srcdir)/tests/buffer/tests/*.c
 	@echo 'Generating $@'
 	@echo '/* this file is generated by the build system */' > $@
-	@for TEST in  `ls tests/*.c |sed -e s:tests/:: -e s:\\\.c::`; do \
+	@for TEST in  `ls $(top_srcdir)/tests/buffer/tests/*.c | sed -e s:$(top_srcdir)/tests/buffer/tests/:: -e s:\\\.c::`; do \
 	     echo "#define TESTNAME $$TEST" >> $@;\
 	     echo "#define TEST() static gchar * TESTNAME (void)" >> $@;\
 	     echo "#include \"tests/"$$TEST".c\"" >> $@;\
@@ -40,21 +42,23 @@ buffer-tests.inc: $(buffer_test_SOURCES) Makefile.am $(top_srcdir)/tests/buffer/
 	     echo "#undef TEST" >> $@;\
 	done;
 	@echo 'typedef gchar *(*TestFunc) ();TestFunc tests[]={' >> $@
-	@for TEST in  `ls tests/*.c |sed -e s:tests/:: -e s:\\\.c::`; do \
+	@for TEST in  `ls $(top_srcdir)/tests/buffer/tests/*.c | sed -e s:$(top_srcdir)/tests/buffer/tests/:: -e s:\\\.c::`; do \
 	     echo $$TEST, >> $@;\
 	done;
 	@echo '};' >> $@
 	@echo 'static gchar *test_names[]={' >> $@
-	@for TEST in  `ls tests/*.c |sed -e s:tests/:: -e s:\\\.c::`; do \
+	@for TEST in  `ls $(top_srcdir)/tests/buffer/tests/*.c | sed -e s:$(top_srcdir)/tests/buffer/tests/:: -e s:\\\.c::`; do \
 	     echo \"$$TEST\", >> $@;\
 	done;
 	@echo '};' >> $@
 
 buffer-tests-report: buffer-test$(EXEEXT) $(top_srcdir)/tests/buffer/reference/*.buf
-	mkdir -p output > /dev/null 2>&1
+	@mkdir -p output > /dev/null 2>&1
 	./buffer-test$(EXEEXT)
 	for f in $(top_srcdir)/tests/buffer/reference/*.buf; do diff --report-identical-files --context=50 $$f output/`basename $$f`; done > buffer-tests-report; true
 
+clean-local:
+	rm -rf output
 
 # Don't forget to clean
 CLEANFILES = buffer-tests.inc buffer-tests-report
diff --git a/tests/buffer/buffer-tests-results.sh b/tests/buffer/buffer-tests-results.sh
index 02e1e5f..11819eb 100755
--- a/tests/buffer/buffer-tests-results.sh
+++ b/tests/buffer/buffer-tests-results.sh
@@ -1,5 +1,9 @@
 #!/bin/sh
-total_tests=`ls -1 reference/*.buf | wc -l`
+
+# Set by TESTS_ENVIRONMENT in Makefile.am
+reference_dir=$REFERENCE_DIR
+
+total_tests=`ls -1 $reference_dir/*.buf | wc -l`
 successful_tests=`cat buffer-tests-report | grep identical | wc -l`
 
 echo $successful_tests of $total_tests tests succesful.



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]