#!/bin/sh
#
# Run privoxy-regression-test.pl on a configuration extended by
# regression-tests.action.
#
# (c) 2016 Roland Rosenfeld <roland@debian.org>

PORT=8119

if [ -z "$ADTTMP" ]; then
    ADTTMP=$(mktemp -d)
fi

CONFIG=$ADTTMP/config
PIDFILE=$ADTTMP/privoxy.pid
sed -e "s/^listen-address.*/listen-address 127.0.0.1:$PORT/" \
    -e "s%^logdir.*%logdir $ADTTMP%" \
    -e "s/^enable-edit-actions.*/enable-edit-actions 1/" \
    -e "s/^keep-alive-timeout.*/keep-alive-timeout 21/" \
    -e "s/^#connection-sharing.*/connection-sharing 1/" \
    < /usr/share/privoxy/config > $CONFIG
echo "actionsfile regression-tests.action" >> $CONFIG

echo "Starting privoxy on port $PORT"
/usr/sbin/privoxy --pidfile $PIDFILE $CONFIG

http_proxy=http://127.0.0.1:$PORT/
export http_proxy

OUTFILE=$ADTTMP/output

/usr/bin/privoxy-regression-test --max-level 200 --show-skipped-tests \
    | tee $OUTFILE 2>&1

echo "Stopping privoxy on port $PORT"
kill $(cat $PIDFILE)

if grep -q 'Executed.*, 0 failures.' $OUTFILE
then
    exit 0
else
    exit 1
fi

