X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=test%2Ftest_http.sh;h=5e708366bcf823c418157ba3c8b0aae50e103c82;hb=04864c49bf43ed46f71e0a6e452d56fe76fdfce1;hp=07363bb06e61af7ecbfde8f4e5501390b4a5f437;hpb=c7a7da93383fccb6f5cf7b74007d9fc7c3a2cf78;p=pazpar2-moved-to-github.git diff --git a/test/test_http.sh b/test/test_http.sh index 07363bb..5e70836 100755 --- a/test/test_http.sh +++ b/test/test_http.sh @@ -1,39 +1,31 @@ #!/bin/sh -# $Id: test_http.sh,v 1.2 2007-05-15 21:28:36 adam Exp $ +# $Id: test_http.sh,v 1.7 2007-05-23 21:58:29 adam Exp $ # -# Regression test using pazpar2 against yaz-ztest +# Regression test using pazpar2 against z3950.indexdata.com/marc # Reads Pazpar2 URLs from test_http_urls # Outputs to test_http_.log -# Matches against results in test_htttp_.res +# Matches against results in test_http_.res # # srcdir might be set by make srcdir=${srcdir:-"."} -# Find a suitable yaz-ztest -yt="" -for d in /usr/bin /usr/local/bin ../../yaz/ztest; do - yt=${d}/yaz-ztest - if test -x ${yt}; then - break - fi -done -if test -z "${yt}"; then - echo "No yaz-ztest found. Skipping" - exit 0 +wget="" +lynx="" +if test -x /usr/bin/wget; then + wget=/usr/bin/wget +fi +if test -x /usr/bin/lynx; then + lynx=/usr/bin/lynx fi -# Fire up yaz-ztest (should match port in test_http.xml) -$yt -l test_http_ztest.log tcp:@:9764 & -YTPID=$! - -# Fire yp pazpar2 +# Fire up pazpar2 rm -f pazpar2.log -../src/pazpar2 -l pazpar2.log -f ${srcdir}/test_http.cfg -t ${srcdir}/test_http.xml >extra_pazpar2.log 2>&1 & +../src/pazpar2 -X -l pazpar2.log -f ${srcdir}/test_http.cfg -t ${srcdir}/test_http.xml >extra_pazpar2.log 2>&1 & PP2PID=$! -# Give both programs room to start properly.. +# Give it a chance to start properly.. sleep 1 # Set to success by default.. Will be set to non-zero in case of failure @@ -47,42 +39,52 @@ else echo "pazpar2 failed to start" fi -if ps -p $YTPID >/dev/null 2>&1; then - : -else - code=1 - YTPID="" - echo "yaz-ztest failed to start" -fi # We can start test for real +oIFS="$IFS" +IFS=' +' + testno=1 for f in `cat ${srcdir}/test_http_urls`; do - OUT1=${srcdir}/test_http_${testno}.res - OUT2=${srcdir}/test_http_${testno}.log - DIFF=${srcdir}/test_http_${testno}.dif - if test -f $OUT1; then - rm -f $OUT2 - wget -q -O $OUT2 $f - if diff $OUT1 $OUT2 >$DIFF; then - : + if echo $f | grep '^http' >/dev/null; then + OUT1=${srcdir}/test_http_${testno}.res + OUT2=test_http_${testno}.log + DIFF=test_http_${testno}.dif + if test -f $OUT1; then + rm -f $OUT2 + if test -n "${wget}"; then + ${wget} -q -O $OUT2 $f + elif test -n "${lynx}"; then + ${lynx} -dump $f >$OUT2 + else + break + fi + if diff $OUT1 $OUT2 >$DIFF; then + : + else + echo "Test $testno: Failed. See $OUT1, $OUT2 and $DIFF" + code=1 + fi else - echo "Test $testno: Failed. See $OUT1, $OUT2 and $DIFF" + echo "Test $testno: Making for the first time" + ${wget} -q -O $OUT1 $f code=1 fi + testno=`expr $testno + 1` else - echo "Test $testno: Making for the first time" - wget -q -O $OUT1 $f - code=1 + sleep $f + fi + if ps -p $PP2PID >/dev/null 2>&1; then + : + else + echo "pazpar2 died" fi - testno=`expr $testno + 1` done +IFS="$oIFS" sleep 1 # Kill programs -if test -n "$YTPID"; then - kill $YTPID -fi if test -n "$PP2PID"; then kill $PP2PID