#!/bin/sh

run_check() {
    OUTPUT="$("$@" 2>&1)"
    STATUS="$?"

    echo "$OUTPUT"

    if [ "$STATUS" = "0" ]; then
        exit 1
    else
        ISSUES="$(echo "$OUTPUT" | grep -v "^bwping is part of the " | \
                                   grep -v "^Usage: bwping \[-4 | -6\] \[-B bind_addr\] \[-I ident\] \[-T tos(v4) | traf_class(v6)\] \[-r reporting_period\] \[-u buf_size\] -b kbps -s pkt_size -v volume target$")"

        if [ "$ISSUES" != "" ]; then
            exit 1
        fi
    fi
}

run_check ./bwping
run_check ./bwping localhost
run_check ./bwping -b 800 localhost
run_check ./bwping -b 800 -s 500 localhost
run_check ./bwping -b 800 -s 500 -v 200000
run_check ./bwping -b 800 -s 500 -v 200000 localhost x
run_check ./bwping -B -b 800 -s 500 -v 200000 localhost
run_check ./bwping -I -b 800 -s 500 -v 200000 localhost
run_check ./bwping -T -b 800 -s 500 -v 200000 localhost
run_check ./bwping -r -b 800 -s 500 -v 200000 localhost
run_check ./bwping -u -b 800 -s 500 -v 200000 localhost

exit 0
