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

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
Loading
Loading
Loading
Loading
+25 −8
Original line number Diff line number Diff line
@@ -201,11 +201,16 @@ make_connection()
	server_serverside=$(grep "type:1," "$server_evts" |
			    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 ] &&
		   [ "$server_serverside" = 1 ]
	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
		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
	fi

@@ -225,13 +230,26 @@ make_connection()
	fi
}

# $1: var name
# $1: var name ; $2: prev ret
check_expected_one()
{
	local var="${1}"
	local exp="e_${var}"
	local prev_ret="${2}"

	if [ "${!var}" = "${!exp}" ]
	then
		return 0
	fi

	if [ "${prev_ret}" = "0" ]
	then
		stdbuf -o0 -e0 printf "[FAIL]\n"
	fi

	[ "${!var}" = "${!exp}" ]
	stdbuf -o0 -e0 printf "\tExpected value for '%s': '%s', got '%s'.\n" \
		"${var}" "${!var}" "${!exp}"
	return 1
}

# $@: all var names to check
@@ -242,7 +260,7 @@ check_expected()

	for var in "${@}"
	do
		check_expected_one "${var}" || ret=1
		check_expected_one "${var}" "${ret}" || ret=1
	done

	if [ ${ret} -eq 0 ]
@@ -251,7 +269,6 @@ check_expected()
		return 0
	fi

	stdbuf -o0 -e0 printf "[FAIL]\n"
	exit 1
}

@@ -303,7 +320,7 @@ test_announce()
	then
		stdbuf -o0 -e0 printf "[OK]\n"
	else
		stdbuf -o0 -e0 printf "[FAIL]\n"
		stdbuf -o0 -e0 printf "[FAIL]\n\ttype defined: %s\n" "${type}"
		exit 1
	fi

@@ -837,7 +854,7 @@ test_prio()
	count=$(ip netns exec "$ns2" nstat -as | grep MPTcpExtMPPrioTx | awk '{print $2}')
	[ -z "$count" ] && count=0
	if [ $count != 1 ]; then
		stdbuf -o0 -e0 printf "[FAIL]\n"
		stdbuf -o0 -e0 printf "[FAIL]\n\tCount != 1: %d\n" "${count}"
		exit 1
	else
		stdbuf -o0 -e0 printf "[OK]\n"
@@ -848,7 +865,7 @@ test_prio()
	count=$(ip netns exec "$ns1" nstat -as | grep MPTcpExtMPPrioRx | awk '{print $2}')
	[ -z "$count" ] && count=0
	if [ $count != 1 ]; then
		stdbuf -o0 -e0 printf "[FAIL]\n"
		stdbuf -o0 -e0 printf "[FAIL]\n\tCount != 1: %d\n" "${count}"
		exit 1
	else
		stdbuf -o0 -e0 printf "[OK]\n"