Blame testsuite/lib/generic.sh

Packit Service 3880ab
export DEST="127.0.0.1"
Packit Service 3880ab
Packit Service 3880ab
ts_log()
Packit Service 3880ab
{
Packit Service 3880ab
	echo "$@"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_err()
Packit Service 3880ab
{
Packit Service 3880ab
	ts_log "$@" | tee >> $ERRF
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_cat()
Packit Service 3880ab
{
Packit Service 3880ab
	cat "$@"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_err_cat()
Packit Service 3880ab
{
Packit Service 3880ab
	ts_cat "$@" | tee >> $ERRF
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_skip()
Packit Service 3880ab
{
Packit Service 3880ab
    exit 127
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
__ts_cmd()
Packit Service 3880ab
{
Packit Service 3880ab
	CMD=$1; shift
Packit Service 3880ab
	SCRIPT=$1; shift
Packit Service 3880ab
	DESC=$1; shift
Packit Service 3880ab
Packit Service 3880ab
	$CMD $@ 2> $STD_ERR > $STD_OUT
Packit Service 3880ab
Packit Service 3880ab
	if [ -s $STD_ERR ]; then
Packit Service 3880ab
		ts_err "${SCRIPT}: ${DESC} failed:"
Packit Service 3880ab
		ts_err "command: $CMD $@"
Packit Service 3880ab
		ts_err "stderr output:"
Packit Service 3880ab
		ts_err_cat $STD_ERR
Packit Service 3880ab
		if [ -s $STD_OUT ]; then
Packit Service 3880ab
			ts_err "stdout output:"
Packit Service 3880ab
			ts_err_cat $STD_OUT
Packit Service 3880ab
		fi
Packit Service 3880ab
	elif [ -s $STD_OUT ]; then
Packit Service 3880ab
		echo "${SCRIPT}: ${DESC} succeeded with output:"
Packit Service 3880ab
		cat $STD_OUT
Packit Service 3880ab
	else
Packit Service 3880ab
		echo "${SCRIPT}: ${DESC} succeeded"
Packit Service 3880ab
	fi
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_tc()
Packit Service 3880ab
{
Packit Service 3880ab
	__ts_cmd "$TC" "$@"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_ip()
Packit Service 3880ab
{
Packit Service 3880ab
	__ts_cmd "$IP" "$@"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_ss()
Packit Service 3880ab
{
Packit Service 3880ab
	__ts_cmd "$SS" "$@"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_bridge()
Packit Service 3880ab
{
Packit Service 3880ab
	__ts_cmd "$BRIDGE" "$@"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
ts_qdisc_available()
Packit Service 3880ab
{
Packit Service 3880ab
	HELPOUT=`$TC qdisc add $1 help 2>&1`
Packit Service 3880ab
	if [ "`echo $HELPOUT | grep \"^Unknown qdisc\"`" ]; then
Packit Service 3880ab
		return 0;
Packit Service 3880ab
	else
Packit Service 3880ab
		return 1;
Packit Service 3880ab
	fi
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
rand_dev()
Packit Service 3880ab
{
Packit Service 3880ab
    rnd=""
Packit Service 3880ab
    while [ ${#rnd} -ne 6 ]; do
Packit Service 3880ab
        rnd="$(head -c 250 /dev/urandom | tr -dc '[:alpha:]' | head -c 6)"
Packit Service 3880ab
    done
Packit Service 3880ab
    echo "dev-$rnd"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
pr_failed()
Packit Service 3880ab
{
Packit Service 3880ab
	echo " [FAILED]"
Packit Service 3880ab
	ts_err "matching failed"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
pr_success()
Packit Service 3880ab
{
Packit Service 3880ab
	echo " [SUCCESS]"
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
test_on()
Packit Service 3880ab
{
Packit Service 3880ab
	echo -n "test on: \"$1\""
Packit Service 3880ab
	if cat "$STD_OUT" | grep -qE "$1"
Packit Service 3880ab
	then
Packit Service 3880ab
		pr_success
Packit Service 3880ab
	else
Packit Service 3880ab
		pr_failed
Packit Service 3880ab
	fi
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
test_on_not()
Packit Service 3880ab
{
Packit Service 3880ab
	echo -n "test on: \"$1\""
Packit Service 3880ab
	if cat "$STD_OUT" | grep -vqE "$1"
Packit Service 3880ab
	then
Packit Service 3880ab
		pr_success
Packit Service 3880ab
	else
Packit Service 3880ab
		pr_failed
Packit Service 3880ab
	fi
Packit Service 3880ab
}
Packit Service 3880ab
Packit Service 3880ab
test_lines_count()
Packit Service 3880ab
{
Packit Service 3880ab
	echo -n "test on lines count ($1): "
Packit Service 3880ab
	if [ $(cat "$STD_OUT" | wc -l) -eq "$1" ]
Packit Service 3880ab
	then
Packit Service 3880ab
		pr_success
Packit Service 3880ab
	else
Packit Service 3880ab
		pr_failed
Packit Service 3880ab
	fi
Packit Service 3880ab
}