#!/bin/sh # # Run privoxy-regression-test.pl on a configuration extended by # regression-tests.action. # # (c) 2018-2022 Roland Rosenfeld PORT=8119 if [ -z "$AUTOPKGTEST_TMP" ]; then AUTOPKGTEST_TMP=$(mktemp -d) fi trap 'rm -rf "$AUTOPKGTEST_TMP"' EXIT CONFIG=$AUTOPKGTEST_TMP/config PIDFILE=$AUTOPKGTEST_TMP/privoxy.pid PRIVOXY=$AUTOPKGTEST_TMP/privoxy cp /usr/sbin/privoxy "$PRIVOXY" http_proxy=http://127.0.0.1:$PORT/ export http_proxy OUTFILE=$AUTOPKGTEST_TMP/output echo "#### pass 1: some optiones disabled" sed -e "s/^listen-address.*/listen-address 127.0.0.1:$PORT/" \ -e "s%^logdir.*%logdir $AUTOPKGTEST_TMP%" \ -e "s/^keep-alive-timeout.*/keep-alive-timeout 21/" \ -e "s/^#connection-sharing.*/connection-sharing 0/" \ < /usr/share/privoxy/config > "$CONFIG" echo "actionsfile regression-tests.action" >> "$CONFIG" echo "Starting privoxy on port $PORT" $PRIVOXY --pidfile "$PIDFILE" "$CONFIG" /usr/bin/privoxy-regression-test --max-level 200 --show-skipped-tests \ | tee "$OUTFILE" 2>&1 echo "#### pass 2 with some more options enabled" sed -e "s/^listen-address.*/listen-address 127.0.0.1:$PORT/" \ -e "s%^logdir.*%logdir $AUTOPKGTEST_TMP%" \ -e "s/^enable-remote-toggle.*/enable-remote-toggle 1/" \ -e "s/^enable-edit-actions.*/enable-edit-actions 1/" \ -e "s/^enable-proxy-authentication-forwarding.*/enable-proxy-authentication-forwarding 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" /usr/bin/privoxy-regression-test --max-level 200 --show-skipped-tests \ | tee -a "$OUTFILE" 2>&1 echo "Stopping privoxy on port $PORT" kill "$(cat "$PIDFILE")" # Check that 2 passes have both 0 failures: if [ "$(grep -c 'Executed.*, 0 failures' "$OUTFILE")" = 2 ] then exit 0 else exit 1 fi