add "print test titles" and "use sudo" functionality to t_client.rc

Signed-off-by: Gert Doering <gert@greenie.muc.de>
Acked-by: David Sommerseth <davids@redhat.com>
Signed-off-by: David Sommerseth <davids@redhat.com>
This commit is contained in:
Gert Doering 2012-01-22 22:37:25 +01:00 committed by David Sommerseth
parent 06e781f885
commit 9c6ee9d1ec
2 changed files with 23 additions and 9 deletions

View File

@ -19,6 +19,12 @@ REMOTE=mytestserver
#
TEST_RUN_LIST="1 2"
#
# use "sudo" (etc) to give openvpn the necessary privileges
# if this is not active, "make check" must be run as root
#
#RUN_SUDO=sudo
#
# base confic that is the same for all the p2mp test runs
#
@ -39,6 +45,7 @@ OPENVPN_BASE_P2P="..."
#
# possible test options:
#
# RUN_TITLE_x="what is being tested on here" (purely informational)
# OPENVPN_CONF_x = "how to call ./openvpn" [mandatory]
# EXPECT_IFCONFIG4_x = "this IPv4 address needs to show up in ifconfig"
# EXPECT_IFCONFIG6_x = "this IPv6 address needs to show up in ifconfig"
@ -48,6 +55,7 @@ OPENVPN_BASE_P2P="..."
# Test 1: UDP / p2mp tun
# specify IPv4+IPv6 addresses expected from server and ping targets
#
RUN_TITLE_1="testing tun/udp/ipv4+ipv6"
OPENVPN_CONF_1="$OPENVPN_BASE_P2MP --dev tun --proto udp --remote $REMOTE --port 51194"
EXPECT_IFCONFIG4_1="10.100.50.6"
EXPECT_IFCONFIG6_1="2001:dba:a050::1:0"
@ -56,6 +64,7 @@ PING6_HOSTS_1="2001:dba::1 2001:dba:a050::1"
# Test 2: TCP / p2mp tun
#
RUN_TITLE_2="testing tun/tcp/ipv4+ipv6"
OPENVPN_CONF_2="$OPENVPN_BASE_P2MP --dev tun --proto tcp --remote $REMOTE --port 51194"
EXPECT_IFCONFIG4_2="10.100.51.6"
EXPECT_IFCONFIG6_2="2001:dba:a051::1:0"

View File

@ -50,8 +50,12 @@ ID=`id`
if expr "$ID" : "uid=0" >/dev/null
then :
else
echo "$0: this test must run be as root. SKIP." >&2
exit 77
if [ -z "$RUN_SUDO" ]
then
echo "$0: this test must run be as root, or RUN_SUDO=... " >&2
echo " must be set correctly in 't_client.rc'. SKIP." >&2
exit 77
fi
fi
LOGDIR=t_client-`hostname`-`date +%Y%m%d-%H%M%S`
@ -199,19 +203,20 @@ run_ping_tests()
# ----------------------------------------------------------
for SUF in $TEST_RUN_LIST
do
echo -e "\n### test run $SUF ###\n"
fail_count=0
echo "save pre-openvpn ifconfig + route"
get_ifconfig_route >$LOGDIR/$SUF:ifconfig_route_pre.txt
# get config variables
eval test_run_title=\"\$RUN_TITLE_$SUF\"
eval openvpn_conf=\"\$OPENVPN_CONF_$SUF\"
eval expect_ifconfig4=\"\$EXPECT_IFCONFIG4_$SUF\"
eval expect_ifconfig6=\"\$EXPECT_IFCONFIG6_$SUF\"
eval ping4_hosts=\"\$PING4_HOSTS_$SUF\"
eval ping6_hosts=\"\$PING6_HOSTS_$SUF\"
echo -e "\n### test run $SUF: '$test_run_title' ###\n"
fail_count=0
echo "save pre-openvpn ifconfig + route"
get_ifconfig_route >$LOGDIR/$SUF:ifconfig_route_pre.txt
echo -e "\nrun pre-openvpn ping tests - targets must not be reachable..."
run_ping_tests 4 want_fail "$ping4_hosts"
run_ping_tests 6 want_fail "$ping6_hosts"
@ -224,7 +229,7 @@ do
fi
echo " run ./openvpn $openvpn_conf"
./openvpn $openvpn_conf >$LOGDIR/$SUF:openvpn.log &
$RUN_SUDO ./openvpn $openvpn_conf >$LOGDIR/$SUF:openvpn.log &
opid=$!
# make sure openvpn client is terminated in case shell exits