# # Initialise variables and directories to prepare to run test suite. # If run with argument --start-apache it will also start httpd. # If run with argument --stop-apache it will stop httpd and exit. # If there is a problem before the test, "exit 77" skips the test (not fails it) # # Part of the ht://Dig package # Copyright (c) 1999-2004 The ht://Dig Group # For copyright details, see the file COPYING in your distribution # or the GNU Library General Public License (LGPL) version 2 or later # # # $Id: test_functions.in,v 1.16 2004/05/28 13:15:30 lha Exp $ # if [ "$test_functions_action" = --stop-apache ] then if [ -n "$httpd" -a -f logs/httpd.pid ] then kill -15 `cat logs/httpd.pid` sleep 2 rm -f logs/httpd.pid fi else testdir=`pwd` perl=@PERL@ awk=@AWK@ @SET_MAKE@ if [ -z "$MAKE" ] then echo "no make command found" exit 77 fi # # Prepare http server # ( cd conf $MAKE user="@USER@" modules="@APACHE_MODULES@" testdir=$testdir all > /dev/null ) httpd=@APACHE@ # if apache requested, either start it or warn it was not configured. if [ "$test_functions_action" = --start-apache ] then if [ -z "$httpd" ] then prog_name=`basename $0` echo "Run configure with --with-apache= to run $prog_name." exit 77 fi if [ ! -d logs ] then mkdir -p logs else if [ -f logs/httpd.pid ] then kill -15 `cat logs/httpd.pid` sleep 2 rm -f logs/httpd.pid fi fi if $httpd -f $testdir/conf/httpd.conf then sleep 2 else echo echo "****Could not start apache. This test may fail, but that is not ht://Dig's fault" echo fi fi # # Prepare htdig test environment # rm -fr var/htdig rm -fr var/htdig2 mkdir -p var/htdig mkdir -p var/htdig2 htdig=../htdig/htdig htsearch=../htsearch/htsearch htmerge=../httools/htmerge htpurge=../httools/htpurge htstat=../httools/htstat htdump=../httools/htdump htload=../httools/htload htfuzzy=../htfuzzy/htfuzzy # # Default index description used for testing # export MIFLUZ_CONFIG ; MIFLUZ_CONFIG=${srcdir}/mifluz.conf rm -f test test_weakcmpr __db* # # Provide a unified means for scripts to clean up. # fail() { echo "$1" if [ -n "$httpd" -a -f logs/httpd.pid ] then kill -15 `cat logs/httpd.pid` sleep 2 rm -f logs/httpd.pid fi exit 1 } conf=conf/htdig.conf.tmp set_attr () { if @EGREP@ "^$1" $conf > /dev/null ; then @MV@ $conf tmp_conf @SED@ "s@^$1.*@$1: $2@" < tmp_conf > $conf else echo "$1: $2" >> $conf fi } fi # $1 != --stop-apache