149de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum#!/usr/bin/env bash
249de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
349de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumcd "`dirname $0`"
449de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
549de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumdie () {
649de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum	set +x # Turn off printing commands
749de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum	echo ""
849de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum	echo " *** fatal error: $*"
949de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum	exit 1
1049de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum}
1149de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
1249de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumif [ -z $ANDROID_BUILD_TOP ]; then
1349de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum  echo "You need to source and lunch before you can use this script"
1449de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum  exit 1
1549de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumfi
1649de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
1749de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum./prepdevice.sh || die "Unable to prepare device"
1849de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
1949de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumsleep 2
2049de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
2149de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumecho "Running tests. . ."
2249de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
2349de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumset -x # print commands
2449de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
2549de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumadb shell killall wpantund 2> /dev/null
2649de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
2749de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumadb shell wpantund -s 'system:ot-ncp\ 1' -o Config:Daemon:ExternalNetifManagement 1 &
2849de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert QuattlebaumWPANTUND_PID=$!
2949de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumtrap "kill -HUP $WPANTUND_PID 2> /dev/null" EXIT INT TERM
3049de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
3149de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumsleep 2
3249de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
3349de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumkill -0 $WPANTUND_PID || die "wpantund failed to start"
3449de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
3549de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumsleep 2
3649de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
3749de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumadb shell lowpanctl status || die
3849de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumadb shell lowpanctl form blahnet || die
3949de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumadb shell lowpanctl status || die
4049de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumadb shell ifconfig wpan0 || die
4149de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
4249de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumset +x # Turn off printing commands
4349de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
4449de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaumecho Finished.
4549de520a96e39d96e2fdc041b2feaddaab8ee1d5Robert Quattlebaum
46