]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
tests: Use Automake’s parallel test driver to speed up running tests
authorReuben Thomas <rrt@sc3d.org>
Tue, 3 Nov 2020 23:11:34 +0000 (23:11 +0000)
committerRico Tzschichholz <ricotz@ubuntu.com>
Thu, 5 Nov 2020 07:53:15 +0000 (08:53 +0100)
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1094

24 files changed:
Makefile.am
build-aux/testrunner.sh [moved from tests/testrunner.sh with 67% similarity]
tests/.gitignore [new file with mode: 0644]
tests/Makefile.am
tests/linux/file-commandpipe.vala [moved from tests/posix/file-commandpipe.vala with 100% similarity]
tests/linux/tests-extra-environment.sh [new file with mode: 0644]
tests/nullability/tests-extra-environment.sh [new file with mode: 0644]
tests/posix/arrays.vala [new symlink]
tests/posix/delegate_only.vala [new symlink]
tests/posix/empty-length-0.vala [new symlink]
tests/posix/enum_only.vala [new symlink]
tests/posix/struct_only.vala [new symlink]
tests/posix/tests-extra-environment.sh [new file with mode: 0644]
tests/version/tests-extra-environment.sh [new file with mode: 0644]
valadoc/tests/.gitignore [new file with mode: 0644]
valadoc/tests/Makefile.am
valadoc/tests/libvaladoc/parser-generic-scanner.vala [moved from valadoc/tests/libvaladoc/parser/generic-scanner.vala with 100% similarity]
valadoc/tests/libvaladoc/parser-manyrule.vala [moved from valadoc/tests/libvaladoc/parser/manyrule.vala with 100% similarity]
valadoc/tests/libvaladoc/parser-oneofrule.vala [moved from valadoc/tests/libvaladoc/parser/oneofrule.vala with 100% similarity]
valadoc/tests/libvaladoc/parser-optionalrule.vala [moved from valadoc/tests/libvaladoc/parser/optionalrule.vala with 100% similarity]
valadoc/tests/libvaladoc/parser-sequencerule.vala [moved from valadoc/tests/libvaladoc/parser/sequencerule.vala with 100% similarity]
valadoc/tests/libvaladoc/parser-stubrule.vala [moved from valadoc/tests/libvaladoc/parser/stubrule.vala with 100% similarity]
valadoc/tests/libvaladoc/tests-extra-environment.sh [new file with mode: 0644]
valadoc/tests/testrunner.sh [deleted file]

index c96ea4e84af73115c399628afe8c58af84a7ba47..992f95f513455d75c3a1b79ce9bb88fdf9a1ed6c 100644 (file)
@@ -100,4 +100,5 @@ EXTRA_DIST = \
        .version \
        build-aux/git-version-gen \
        build-aux/gitlog-to-changelog \
+       build-aux/testrunner.sh \
        $(NULL)
similarity index 67%
rename from tests/testrunner.sh
rename to build-aux/testrunner.sh
index ac5ffe1adc8786c797c672772194f871dadd933f..a3363310bf18621927d48e109b0496488de97492 100755 (executable)
 # Author:
 #      Jürg Billeter <j@bitron.ch>
 
-builddir=$PWD
-topbuilddir=$builddir/..
-srcdir=$PWD/`dirname $0`
-topsrcdir=$srcdir/..
-vapidir=$topsrcdir/vapi
+EXTRA_ENVIRONMENT_FILE=tests-extra-environment.sh
+
+testfile=$1
+testdirname="$(dirname $testfile)"
+if test -f $testdirname/$EXTRA_ENVIRONMENT_FILE; then
+       source $testdirname/$EXTRA_ENVIRONMENT_FILE
+fi
+
+vapidir=$abs_top_srcdir/vapi
 run_prefix=""
 
-VALAC=$topbuilddir/compiler/valac$EXEEXT
+VALAC=$abs_top_builddir/compiler/valac$EXEEXT
 VALAFLAGS="$VALAFLAGS \
        --vapidir $vapidir \
        --enable-checking \
@@ -39,7 +43,7 @@ VALAFLAGS="$VALAFLAGS \
        -X -pipe \
        -X -lm \
        -X -DGETTEXT_PACKAGE=\\\"valac\\\""
-VAPIGEN=$topbuilddir/vapigen/vapigen$EXEEXT
+VAPIGEN=$abs_top_builddir/vapigen/vapigen$EXEEXT
 VAPIGENFLAGS="--vapidir $vapidir"
 
 # Incorporate the TEST_CFLAGS.
@@ -142,12 +146,12 @@ function sourceend() {
        fi
 }
 
-testdir=_test
+testdir=_test.$$
 rm -rf $testdir
 mkdir $testdir
 cd $testdir
 
-echo -n -e "TEST: Preparing...\033[72G"
+echo -n -e "TEST: Preparing..."
 
 cat << "EOF" > checkall
 all=0
@@ -155,88 +159,87 @@ fail=0
 EOF
 
 PACKAGES=$([ -z "$PACKAGES" ] && echo "gio-2.0" || echo $PACKAGES)
-for testfile in "$@"; do
-       rm -f prepare check
-       echo 'set -e' >> prepare
-       run_prefix=""
+testfile=${testfile#$srcdir/}
+rm -f prepare check
+echo 'set -e' >> prepare
+run_prefix=""
 
-       case "$testfile" in
-       *.vala)
-               testpath=${testfile/.vala/}
-               ns=${testpath//\//_}
-               ns=${ns//-/_}
-               SOURCEFILE=$ns.vala
+case "$testfile" in
+*.vala)
+       testpath=${testfile/.vala/}
+       ns=${testpath//\//_}
+       ns=${ns//-/_}
+       SOURCEFILE=$ns.vala
 
-               cat "$srcdir/$testfile" >> $SOURCEFILE
+       cat "$abs_srcdir/$testfile" >> $SOURCEFILE
 
-               PACKAGEFLAGS=$([ -z "$PACKAGES" ] || echo $PACKAGES | xargs -n 1 echo -n " --pkg")
-               echo "G_DEBUG=fatal-warnings $VALAC $VALAFLAGS $PACKAGEFLAGS -o $ns$EXEEXT $SOURCEFILE" >> prepare
-               echo "G_DEBUG=fatal-warnings ./$ns$EXEEXT" >> check
-               ;;
-       *.gs)
-               testpath=${testfile/.gs/}
-               ns=${testpath//\//_}
-               ns=${ns//-/_}
-               SOURCEFILE=$ns.gs
+       PACKAGEFLAGS=$([ -z "$PACKAGES" ] || echo $PACKAGES | xargs -n 1 echo -n " --pkg")
+       echo "G_DEBUG=fatal-warnings $VALAC $VALAFLAGS $PACKAGEFLAGS -o $ns$EXEEXT $SOURCEFILE" >> prepare
+       echo "G_DEBUG=fatal-warnings ./$ns$EXEEXT" >> check
+       ;;
+*.gs)
+       testpath=${testfile/.gs/}
+       ns=${testpath//\//_}
+       ns=${ns//-/_}
+       SOURCEFILE=$ns.gs
 
-               cat "$srcdir/$testfile" >> $SOURCEFILE
+       cat "$abs_srcdir/$testfile" >> $SOURCEFILE
 
-               PACKAGEFLAGS=$([ -z "$PACKAGES" ] || echo $PACKAGES | xargs -n 1 echo -n " --pkg")
-               echo "G_DEBUG=fatal-warnings $VALAC $VALAFLAGS $PACKAGEFLAGS -o $ns$EXEEXT $SOURCEFILE" >> prepare
-               echo "G_DEBUG=fatal-warnings ./$ns$EXEEXT" >> check
-               ;;
-       *.test)
-               PART=0
-               INHEADER=1
-               INVALIDCODE=0
-               GIRTEST=0
-               DBUSTEST=0
-               ISSERVER=0
-               testpath=
-               while IFS="" read -r line; do
-                       if [ $PART -eq 0 ]; then
-                               if [ -n "$line" ]; then
-                                       testheader $line
-                               else
-                                       PART=1
-                               fi
-                       else
-                               if [ $INHEADER -eq 1 ]; then
-                                       if [ -n "$line" ]; then
-                                               sourceheader $line
-                                       else
-                                               INHEADER=0
-                                       fi
-                               else
-                                       if echo "$line" | grep -q "^[A-Za-z]\+:"; then
-                                               sourceend
-                                               PART=$(($PART + 1))
-                                               INHEADER=1
-                                               testpath=
-                                               sourceheader $line
-                                       else
-                                               echo "$line" >> $SOURCEFILE
-                                       fi
-                               fi
-                       fi
-               done < "$srcdir/$testfile"
-               sourceend
-               ;;
-       esac
+       PACKAGEFLAGS=$([ -z "$PACKAGES" ] || echo $PACKAGES | xargs -n 1 echo -n " --pkg")
+       echo "G_DEBUG=fatal-warnings $VALAC $VALAFLAGS $PACKAGEFLAGS -o $ns$EXEEXT $SOURCEFILE" >> prepare
+       echo "G_DEBUG=fatal-warnings ./$ns$EXEEXT" >> check
+       ;;
+*.test)
+       PART=0
+       INHEADER=1
+       INVALIDCODE=0
+       GIRTEST=0
+       DBUSTEST=0
+       ISSERVER=0
+       testpath=
+       while IFS="" read -r line; do
+                   if [ $PART -eq 0 ]; then
+                           if [ -n "$line" ]; then
+                                   testheader $line
+                           else
+                                   PART=1
+                           fi
+                   else
+                           if [ $INHEADER -eq 1 ]; then
+                                   if [ -n "$line" ]; then
+                                           sourceheader $line
+                                   else
+                                           INHEADER=0
+                                   fi
+                           else
+                                   if echo "$line" | grep -q "^[A-Za-z]\+:"; then
+                                           sourceend
+                                           PART=$(($PART + 1))
+                                           INHEADER=1
+                                           testpath=
+                                           sourceheader $line
+                                   else
+                                           echo "$line" >> $SOURCEFILE
+                                   fi
+                           fi
+                   fi
+       done < "$abs_srcdir/$testfile"
+       sourceend
+       ;;
+esac
 
-       cat prepare check > $ns.check
-       cat << EOF >> checkall
-echo -n -e "  /$testpath: \033[72G"
+cat prepare check > $ns.check
+cat << EOF >> checkall
+echo -n -e "  $testpath: "
 ((all++))
 if $run_prefix bash $ns.check &>log; then
-       echo -e "\033[0;32mOK\033[m"
+       echo -e "OK"
 else
        ((fail++))
-       echo -e "\033[0;31mFAIL\033[m"
+       echo -e "FAIL"
        cat log
 fi
 EOF
-done
 
 cat << "EOF" >> checkall
 if [ $fail -eq 0 ]; then
@@ -247,13 +250,12 @@ else
 fi
 EOF
 
-echo -e "\033[0;33mDONE\033[m"
+echo -e "DONE"
 
 if bash checkall; then
-       cd $builddir
+       cd $abs_builddir
        rm -rf $testdir
 else
-       cd $builddir
+       cd $abs_builddir
        exit 1
 fi
-
diff --git a/tests/.gitignore b/tests/.gitignore
new file mode 100644 (file)
index 0000000..7e563b8
--- /dev/null
@@ -0,0 +1,2 @@
+*.log
+*.trs
index 57020feeea89b279c3ef72a1b3bd328127c7fd69..47e9a711b7485f5d03cce02f7be1b1a702ef0f89 100644 (file)
@@ -18,7 +18,24 @@ BUILT_SOURCES = \
 noinst_PROGRAMS = \
        $(NULL)
 
-TESTS_ENVIRONMENT = EXEEXT=$(EXEEXT) CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' $(srcdir)/testrunner.sh
+TEST_EXTENSIONS = .vala .gs .test
+
+TEST_RUNNER = $(abs_top_srcdir)/build-aux/testrunner.sh
+VALA_LOG_COMPILER = $(TEST_RUNNER)
+GS_LOG_COMPILER = $(TEST_RUNNER)
+TEST_LOG_COMPILER = $(TEST_RUNNER)
+
+AM_TESTS_ENVIRONMENT = \
+       export EXEEXT=$(EXEEXT); \
+       export CFLAGS='$(CFLAGS)'; \
+       export CPPFLAGS='$(CPPFLAGS)'; \
+       export LDFLAGS='$(LDFLAGS)'; \
+       export TEST_CFLAGS='$(TEST_CFLAGS)'; \
+       export abs_top_srcdir='$(abs_top_srcdir)'; \
+       export abs_top_builddir='$(abs_top_builddir)'; \
+       export abs_srcdir='$(abs_srcdir)'; \
+       export abs_builddir='$(abs_builddir)'; \
+       export CC='$(CC)';
 
 TESTS = \
        basic-types/integers.vala \
@@ -1019,9 +1036,6 @@ TESTS = \
        semantic/yield-creation-requires-async-context.test \
        semantic/yield-creation-requires-async-method.test \
        semantic/yield-statement-requires-async-context.test \
-       $(NULL)
-
-NON_NULL_TESTS = \
        nullability/bug611223.vala \
        nullability/local-variable-invalid-convert.test \
        nullability/member-access-nullable-instance.test \
@@ -1029,30 +1043,11 @@ NON_NULL_TESTS = \
        nullability/method-return-invalid-convert.test \
        nullability/string-concat.test \
        nullability/with-non-null.test \
-       $(NULL)
-
-LINUX_TESTS = \
-       linux/bug793444.vala \
-       posix/file-commandpipe.vala \
-       $(NULL)
-
-POSIX_TESTS = \
-       basic-types/arrays.vala \
-       arrays/empty-length-0.vala \
-       structs/struct_only.vala \
-       delegates/delegate_only.vala \
-       enums/enum_only.vala \
-       $(NULL)
-
-VERSION_CHECK_TESTS = \
        version/since-constant.test \
        version/since-field.test \
        version/since-local-variable.test \
        version/since-method.test \
        version/since-parameter.test \
-       $(NULL)
-
-GENIE_TESTS = \
        genie/class.gs \
        genie/control-flow-if-do.gs \
        genie/control-flow-if-else.gs \
@@ -1117,32 +1112,29 @@ GENIE_TESTS = \
        genie/preparser-or-expression.gs \
        genie/struct.gs \
        genie/struct-after-class.gs \
+       $(LINUX_TESTS) \
        $(NULL)
 
-check-TESTS: $(TESTS) $(NON_NULL_TESTS)
-       @EXEEXT=$(EXEEXT) CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' \
-               $(srcdir)/testrunner.sh $(TESTS)
+LINUX_TESTS = $(NULL)
+
 if HAVE_LINUX
-       @EXEEXT=$(EXEEXT) CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' \
-               PACKAGES="linux" $(srcdir)/testrunner.sh $(LINUX_TESTS)
-       @EXEEXT=$(EXEEXT) CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' \
-               VALAFLAGS="--profile posix" PACKAGES="posix linux" $(srcdir)/testrunner.sh $(POSIX_TESTS)
+LINUX_TESTS += \
+       linux/bug793444.vala \
+       linux/file-commandpipe.vala \
+       posix/arrays.vala \
+       posix/empty-length-0.vala \
+       posix/struct_only.vala \
+       posix/delegate_only.vala \
+       posix/enum_only.vala \
+       $(NULL)
 endif
-       @EXEEXT=$(EXEEXT) CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' \
-               VALAFLAGS="--enable-experimental-non-null" $(srcdir)/testrunner.sh $(NON_NULL_TESTS)
-       @export PKG_CONFIG_PATH=$(abs_srcdir)/version; EXEEXT=$(EXEEXT) CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' \
-               TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' $(srcdir)/testrunner.sh $(VERSION_CHECK_TESTS)
-       @EXEEXT=$(EXEEXT) CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' \
-               $(srcdir)/testrunner.sh $(GENIE_TESTS)
 
 EXTRA_DIST = \
-       testrunner.sh \
+       linux/tests-extra-environment.sh \
+       nullability/tests-extra-environment.sh \
+       posix/tests-extra-environment.sh \
        version/glib-2.0.pc \
+       version/tests-extra-environment.sh \
        $(TESTS) \
-       $(NON_NULL_TESTS) \
        $(LINUX_TESTS) \
-       $(POSIX_TESTS) \
-       $(VERSION_CHECK_TESTS) \
-       $(GENIE_TESTS) \
        $(NULL)
-
diff --git a/tests/linux/tests-extra-environment.sh b/tests/linux/tests-extra-environment.sh
new file mode 100644 (file)
index 0000000..b6b38e3
--- /dev/null
@@ -0,0 +1 @@
+PACKAGES="linux"
diff --git a/tests/nullability/tests-extra-environment.sh b/tests/nullability/tests-extra-environment.sh
new file mode 100644 (file)
index 0000000..0f2be82
--- /dev/null
@@ -0,0 +1 @@
+VALAFLAGS="--enable-experimental-non-null"
diff --git a/tests/posix/arrays.vala b/tests/posix/arrays.vala
new file mode 120000 (symlink)
index 0000000..c5acf00
--- /dev/null
@@ -0,0 +1 @@
+../basic-types/arrays.vala
\ No newline at end of file
diff --git a/tests/posix/delegate_only.vala b/tests/posix/delegate_only.vala
new file mode 120000 (symlink)
index 0000000..a6397a0
--- /dev/null
@@ -0,0 +1 @@
+../delegates/delegate_only.vala
\ No newline at end of file
diff --git a/tests/posix/empty-length-0.vala b/tests/posix/empty-length-0.vala
new file mode 120000 (symlink)
index 0000000..7ded9d7
--- /dev/null
@@ -0,0 +1 @@
+../arrays/empty-length-0.vala
\ No newline at end of file
diff --git a/tests/posix/enum_only.vala b/tests/posix/enum_only.vala
new file mode 120000 (symlink)
index 0000000..4d86cb0
--- /dev/null
@@ -0,0 +1 @@
+../enums/enum_only.vala
\ No newline at end of file
diff --git a/tests/posix/struct_only.vala b/tests/posix/struct_only.vala
new file mode 120000 (symlink)
index 0000000..fb26918
--- /dev/null
@@ -0,0 +1 @@
+../structs/struct_only.vala
\ No newline at end of file
diff --git a/tests/posix/tests-extra-environment.sh b/tests/posix/tests-extra-environment.sh
new file mode 100644 (file)
index 0000000..ef342f5
--- /dev/null
@@ -0,0 +1,2 @@
+VALAFLAGS="--profile posix"
+PACKAGES="posix linux"
diff --git a/tests/version/tests-extra-environment.sh b/tests/version/tests-extra-environment.sh
new file mode 100644 (file)
index 0000000..26cb797
--- /dev/null
@@ -0,0 +1 @@
+PKG_CONFIG_PATH=$abs_srcdir/version
diff --git a/valadoc/tests/.gitignore b/valadoc/tests/.gitignore
new file mode 100644 (file)
index 0000000..7e563b8
--- /dev/null
@@ -0,0 +1,2 @@
+*.log
+*.trs
index 13670e268a1528a7fa28873033b3090a96cf9b37..62edb7b7cf80dd56b28213ad290aba375d409746 100644 (file)
@@ -2,23 +2,32 @@ include $(top_srcdir)/Makefile.common
 
 NULL =
 
-TESTS_ENVIRONMENT = EXEEXT=$(EXEEXT) PACKAGE_SUFFIX=$(PACKAGE_SUFFIX) TOPBUILDDIR=$(abs_top_builddir) TOPSRCDIR=$(abs_top_srcdir) \
-       CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' $(srcdir)/testrunner.sh
+LOG_COMPILER = $(abs_top_srcdir)/build-aux/testrunner.sh
+AM_TESTS_ENVIRONMENT = \
+       export EXEEXT=$(EXEEXT); \
+       export CFLAGS='$(CFLAGS)'; \
+       export CPPFLAGS='$(CPPFLAGS)'; \
+       export LDFLAGS='$(LDFLAGS)'; \
+       export TEST_CFLAGS='$(TEST_CFLAGS)'; \
+       export PACKAGE_SUFFIX='$(PACKAGE_SUFFIX)' \
+       export abs_top_srcdir='$(abs_top_srcdir)'; \
+       export abs_top_builddir='$(abs_top_builddir)'; \
+       export abs_srcdir='$(abs_srcdir)'; \
+       export abs_builddir='$(abs_builddir)'; \
+       export CC='$(CC)';
 
 TESTS = \
        libvaladoc/errorreporter.vala \
        libvaladoc/markupreader.vala \
        libvaladoc/gtkdoc-scanner.vala \
-       libvaladoc/parser/manyrule.vala \
-       libvaladoc/parser/oneofrule.vala \
-       libvaladoc/parser/sequencerule.vala \
-       libvaladoc/parser/optionalrule.vala \
-       libvaladoc/parser/stubrule.vala \
+       libvaladoc/parser-manyrule.vala \
+       libvaladoc/parser-oneofrule.vala \
+       libvaladoc/parser-sequencerule.vala \
+       libvaladoc/parser-optionalrule.vala \
+       libvaladoc/parser-stubrule.vala \
        $(NULL)
 
-check-TESTS: $(TESTS)
-       @EXEEXT=$(EXEEXT) PACKAGE_SUFFIX=$(PACKAGE_SUFFIX) TOPBUILDDIR=$(abs_top_builddir) TOPSRCDIR=$(abs_top_srcdir) \
-               CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' TEST_CFLAGS='$(TEST_CFLAGS)' CC='$(CC)' $(srcdir)/testrunner.sh $(TESTS)
+check-local:
        G_DEBUG=fatal_warnings $(builddir)/driver
 
 AM_CFLAGS = \
@@ -90,11 +99,11 @@ driver.vala.stamp: $(driver_VALASOURCES) $(top_srcdir)/vala/libvala@PACKAGE_SUFF
 EXTRA_DIST = \
        driver.vala.stamp \
        $(driver_SOURCES) \
-       testrunner.sh \
        drivers/api-test.data.vapi \
        drivers/driver-test.vala \
        drivers/generic-api-test.vala \
-       libvaladoc/parser/generic-scanner.vala \
+       libvaladoc/parser-generic-scanner.vala \
+       libvaladoc/tests-extra-environment.sh \
        $(TESTS) \
        $(NULL)
 
diff --git a/valadoc/tests/libvaladoc/tests-extra-environment.sh b/valadoc/tests/libvaladoc/tests-extra-environment.sh
new file mode 100644 (file)
index 0000000..bed7659
--- /dev/null
@@ -0,0 +1,17 @@
+VALAFLAGS="\
+       -X -D -X TOP_SRC_DIR=\"$abs_top_srcdir\" \
+       --pkg libgvc \
+       --vapidir $abs_top_srcdir/vala \
+       --pkg libvala$PACKAGE_SUFFIX \
+       --vapidir $abs_top_srcdir/libvaladoc \
+       --pkg valadoc$PACKAGE_SUFFIX \
+       --main main \
+       -X -L$abs_top_builddir/vala/.libs -X -lvala$PACKAGE_SUFFIX \
+       -X -L$abs_top_builddir/libvaladoc/.libs -X -lvaladoc$PACKAGE_SUFFIX \
+       -X -I$abs_top_srcdir/gee \
+       -X -I$abs_top_srcdir/vala \
+       -X -I$abs_top_srcdir/libvaladoc \
+       $abs_top_srcdir/valadoc/tests/libvaladoc/parser-generic-scanner.vala \
+"
+PKG_CONFIG_PATH=$abs_top_builddir:$abs_top_builddir/libvaladoc
+LD_LIBRARY_PATH=$abs_top_builddir/vala/.libs:$abs_top_builddir/libvaladoc/.libs
diff --git a/valadoc/tests/testrunner.sh b/valadoc/tests/testrunner.sh
deleted file mode 100755 (executable)
index c06dda3..0000000
+++ /dev/null
@@ -1,154 +0,0 @@
-#!/usr/bin/env bash
-# testrunner.sh
-#
-# Copyright (C) 2006-2008  Jürg Billeter
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Lesser General Public License for more details.
-#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
-#
-# Author:
-#      Jürg Billeter <j@bitron.ch>
-
-builddir=$PWD
-topbuilddir=$TOPBUILDDIR
-topsrcdir=$TOPSRCDIR
-vapidir=$topsrcdir/vapi
-
-export G_DEBUG=fatal_warnings
-export PKG_CONFIG_PATH=$topbuilddir:$topbuilddir/libvaladoc
-export LD_LIBRARY_PATH=$topbuilddir/vala/.libs:$topbuilddir/libvaladoc/.libs
-
-VALAC=$topbuilddir/compiler/valac$EXEEXT
-VALAFLAGS="$VALAFLAGS \
-       -X -D -X TOP_SRC_DIR=\"$topsrcdir\" \
-       --vapidir $vapidir --pkg libgvc \
-       --vapidir $topsrcdir/vala --pkg libvala$PACKAGE_SUFFIX \
-       --vapidir $topsrcdir/libvaladoc --pkg valadoc$PACKAGE_SUFFIX \
-       --disable-warnings \
-       --main main \
-       --save-temps \
-       --cc $CC \
-       -X -g \
-       -X -O0 \
-       -X -pipe \
-       -X -lm \
-       -X -L$topbuilddir/vala/.libs -X -lvala$PACKAGE_SUFFIX \
-       -X -L$topbuilddir/libvaladoc/.libs -X -lvaladoc$PACKAGE_SUFFIX \
-       -X -I$topsrcdir/gee \
-       -X -I$topsrcdir/vala \
-       -X -I$topsrcdir/libvaladoc \
-       $topsrcdir/valadoc/tests/libvaladoc/parser/generic-scanner.vala"
-
-# Incorporate the TEST_CFLAGS.
-for cflag in ${TEST_CFLAGS}; do
-    VALAFLAGS="${VALAFLAGS} -X ${cflag}"
-done
-
-# Incorporate the user's CFLAGS. Matters if the user decided to insert
-# -m32 in CFLAGS, for example.
-for cflag in ${CFLAGS} ${CPPFLAGS} ${LDFLAGS}; do
-       if [[ ! $cflag =~ ^\-O[0-9]$ ]]; then
-               VALAFLAGS="${VALAFLAGS} -X ${cflag}"
-       fi
-done
-
-testdir=_test
-rm -rf $testdir
-mkdir $testdir
-cd $testdir
-
-echo -n -e "TEST: Building...\033[72G"
-
-cat << "EOF" > checkall
-all=0
-fail=0
-EOF
-
-cat << "EOF" > main.vala
-void main (string[] args) {
-       switch (args[1]) {
-EOF
-
-PACKAGES=gio-2.0
-SOURCEFILES=
-for testfile in "$@"; do
-       rm -f prepare check
-       echo 'set -e' >> prepare
-
-       case "$testfile" in
-       *.vala)
-               testpath=${testfile/.vala/}
-               ns=${testpath//\//.}
-               ns=${ns//-/_}
-               SOURCEFILE=$ns.vala
-               SOURCEFILES="$SOURCEFILES $SOURCEFILE"
-
-               echo "  case \"/$testpath\": $ns.main (); break;" >> main.vala
-               echo "namespace $ns {" > $SOURCEFILE
-               cat "$topsrcdir/valadoc/tests/$testfile" >> $SOURCEFILE
-               echo "}" >> $SOURCEFILE
-
-               echo "./test$EXEEXT /$testpath" > check
-               ;;
-       esac
-
-       cat prepare check > $ns.check
-       cat << EOF >> checkall
-echo -n -e "  /$testpath: \033[72G"
-((all++))
-if bash $ns.check &>log; then
-       echo -e "\033[0;32mOK\033[m"
-else
-       ((fail++))
-       echo -e "\033[0;31mFAIL\033[m"
-       cat log
-fi
-EOF
-done
-
-cat << "EOF" >> checkall
-if [ $fail -eq 0 ]; then
-       echo "All $all tests passed"
-else
-       echo "$fail of $all tests failed"
-       exit 1
-fi
-EOF
-
-cat << "EOF" >> main.vala
-       default: assert_not_reached ();
-       }
-}
-EOF
-
-cat $SOURCEFILES >> main.vala
-
-if $VALAC $VALAFLAGS -o test$EXEEXT $([ -z "$PACKAGES" ] || echo $PACKAGES | xargs -n 1 echo -n " --pkg") main.vala &>log; then
-       echo -e "\033[0;32mOK\033[m"
-else
-       echo -e "\033[0;31mFAIL\033[m"
-       cat log
-
-       cd $builddir
-       exit 1
-fi
-
-if bash checkall; then
-       cd $builddir
-       rm -rf $testdir
-else
-       cd $builddir
-       exit 1
-fi
-