Commit 10d42734 authored by Matthieu Baerts's avatar Matthieu Baerts Committed by Paolo Abeni

selftests: mptcp: userspace: print error details if any

Before, only '[FAIL]' was printed in case of error during the validation
phase.

Now, in case of failure, the variable name, its value and expected one
are displayed to help understand what was wrong.
Reviewed-by: default avatarMat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: default avatarMatthieu Baerts <matthieu.baerts@tessares.net>
Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parent 1c0b0ee2
...@@ -201,11 +201,16 @@ make_connection() ...@@ -201,11 +201,16 @@ make_connection()
server_serverside=$(grep "type:1," "$server_evts" | server_serverside=$(grep "type:1," "$server_evts" |
sed --unbuffered -n 's/.*\(server_side:\)\([[:digit:]]*\).*$/\2/p;q') sed --unbuffered -n 's/.*\(server_side:\)\([[:digit:]]*\).*$/\2/p;q')
stdbuf -o0 -e0 printf "Established IP%s MPTCP Connection ns2 => ns1 \t\t" $is_v6
if [ "$client_token" != "" ] && [ "$server_token" != "" ] && [ "$client_serverside" = 0 ] && if [ "$client_token" != "" ] && [ "$server_token" != "" ] && [ "$client_serverside" = 0 ] &&
[ "$server_serverside" = 1 ] [ "$server_serverside" = 1 ]
then then
stdbuf -o0 -e0 printf "Established IP%s MPTCP Connection ns2 => ns1 \t\t[OK]\n" $is_v6 stdbuf -o0 -e0 printf "[OK]\n"
else else
stdbuf -o0 -e0 printf "[FAIL]\n"
stdbuf -o0 -e0 printf "\tExpected tokens (c:%s - s:%s) and server (c:%d - s:%d)\n" \
"${client_token}" "${server_token}" \
"${client_serverside}" "${server_serverside}"
exit 1 exit 1
fi fi
...@@ -225,13 +230,26 @@ make_connection() ...@@ -225,13 +230,26 @@ make_connection()
fi fi
} }
# $1: var name # $1: var name ; $2: prev ret
check_expected_one() check_expected_one()
{ {
local var="${1}" local var="${1}"
local exp="e_${var}" local exp="e_${var}"
local prev_ret="${2}"
[ "${!var}" = "${!exp}" ] if [ "${!var}" = "${!exp}" ]
then
return 0
fi
if [ "${prev_ret}" = "0" ]
then
stdbuf -o0 -e0 printf "[FAIL]\n"
fi
stdbuf -o0 -e0 printf "\tExpected value for '%s': '%s', got '%s'.\n" \
"${var}" "${!var}" "${!exp}"
return 1
} }
# $@: all var names to check # $@: all var names to check
...@@ -242,7 +260,7 @@ check_expected() ...@@ -242,7 +260,7 @@ check_expected()
for var in "${@}" for var in "${@}"
do do
check_expected_one "${var}" || ret=1 check_expected_one "${var}" "${ret}" || ret=1
done done
if [ ${ret} -eq 0 ] if [ ${ret} -eq 0 ]
...@@ -251,7 +269,6 @@ check_expected() ...@@ -251,7 +269,6 @@ check_expected()
return 0 return 0
fi fi
stdbuf -o0 -e0 printf "[FAIL]\n"
exit 1 exit 1
} }
...@@ -303,7 +320,7 @@ test_announce() ...@@ -303,7 +320,7 @@ test_announce()
then then
stdbuf -o0 -e0 printf "[OK]\n" stdbuf -o0 -e0 printf "[OK]\n"
else else
stdbuf -o0 -e0 printf "[FAIL]\n" stdbuf -o0 -e0 printf "[FAIL]\n\ttype defined: %s\n" "${type}"
exit 1 exit 1
fi fi
...@@ -837,7 +854,7 @@ test_prio() ...@@ -837,7 +854,7 @@ test_prio()
count=$(ip netns exec "$ns2" nstat -as | grep MPTcpExtMPPrioTx | awk '{print $2}') count=$(ip netns exec "$ns2" nstat -as | grep MPTcpExtMPPrioTx | awk '{print $2}')
[ -z "$count" ] && count=0 [ -z "$count" ] && count=0
if [ $count != 1 ]; then if [ $count != 1 ]; then
stdbuf -o0 -e0 printf "[FAIL]\n" stdbuf -o0 -e0 printf "[FAIL]\n\tCount != 1: %d\n" "${count}"
exit 1 exit 1
else else
stdbuf -o0 -e0 printf "[OK]\n" stdbuf -o0 -e0 printf "[OK]\n"
...@@ -848,7 +865,7 @@ test_prio() ...@@ -848,7 +865,7 @@ test_prio()
count=$(ip netns exec "$ns1" nstat -as | grep MPTcpExtMPPrioRx | awk '{print $2}') count=$(ip netns exec "$ns1" nstat -as | grep MPTcpExtMPPrioRx | awk '{print $2}')
[ -z "$count" ] && count=0 [ -z "$count" ] && count=0
if [ $count != 1 ]; then if [ $count != 1 ]; then
stdbuf -o0 -e0 printf "[FAIL]\n" stdbuf -o0 -e0 printf "[FAIL]\n\tCount != 1: %d\n" "${count}"
exit 1 exit 1
else else
stdbuf -o0 -e0 printf "[OK]\n" stdbuf -o0 -e0 printf "[OK]\n"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment