aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/onos/tools/test/bin/onos-execute-expect
blob: 6ad95699ec300ed8a0d259945198721ff2229b6a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/bin/bash
# -----------------------------------------------------------------------------
# Executes a command on the given ONOS instance and matches the output
# to the passed one.
# First argument is the IP address of the machine to run the command on,
# then you pass the command and it's arguments if needed, then --expect and
# after it the string of what the output should be.
# Example:
# onos-execute-expect 1.1.1.1 fooCommand fooParamenter --expect fooOutputString
# -----------------------------------------------------------------------------

[ ! -d "$ONOS_ROOT" ] && echo "ONOS_ROOT is not defined" >&2 && exit 1
. $ONOS_ROOT/tools/build/envDefaults


aux=/tmp/stc-$$.log
trap "rm -f $aux 2>/dev/null" EXIT
ip=$1
cmd=""
for a in ${*:2}; do shift; if [ "$a" = "--expect" ]; then break; fi; cmd="$cmd $a"; done
expect="${@: -1}"
onos $ip $cmd > $aux
cat $aux
grep -q $expect $aux && echo "expected value found" && exit 0
exit 1