blob: 7b72005d849e5cf6d9e6489c9ecc5e402fb007bf [file] [log] [blame]
#!/usr/bin/env bash
clean_up() {
r=$(sudo killall nfd 2>&1)
r=$(mv ~/.ndn/client.conf.bk ~/.ndn/client.conf 2>&1)
}
mkdir -p logs
# backup client.conf
echo "backup client.conf"
cp ~/.ndn/client.conf ~/.ndn/client.conf.bk
sed -i 's/^protocol=.*$/protocol=nrd-0.1/g' ~/.ndn/client.conf
# start nfd and nrd
echo "starting nfd and nrd..."
sudo nfd > logs/nfd.log 2>&1 &
sleep 3
nrd &> logs/nrd.log &
sleep 10
# check fib before server starts
echo "checking fib before server starts..."
fib=$(nfd-status -b)
res=$(echo $fib | grep '/test-nrd/A' | wc -l)
if [[ $res -ne 0 ]]
then
echo "the name '/test-nrd/A' already exists"
clean_up
exit 1
fi
res=$(echo $fib | grep '/test-nrd/B' | wc -l)
if [[ $res -ne 0 ]]
then
echo "the name '/test-nrd/B' already exists"
exit 2
fi
# start server
echo "starting server..."
ndn-traffic-server NDNTrafficServer.conf > logs/server.log 2>&1 &
sleep 3
# check fib after server starts
echo "checking fib after server starts..."
fib=$(nfd-status -b)
res=$(echo $fib | grep '/test-nrd/A' | wc -l)
if [[ $res -ne 1 ]]
then
echo "the name '/test-nrd/A' does not exists after ndn-traffic-server starts"
clean_up
exit 3
fi
res=$(echo $fib | grep '/test-nrd/B' | wc -l)
if [[ $res -ne 1 ]]
then
echo "the name '/test-nrd/B' does not exists after ndn-traffic-server starts"
clean_up
exit 4
fi
# stop ndn-traffic-server
echo "stopping ndn-traffic-server..."
sudo killall ndn-traffic-server
sleep 3
# check fib after server stops
echo "checking fib after server stops..."
fib=$(nfd-status -b)
res=$(echo $fib | grep '/test-nrd/A' | wc -l)
if [[ $res -ne 0 ]]
then
echo "the name '/test-nrd/A' still exists after ndn-traffic-server exit"
clean_up
exit 5
fi
res=$(echo $fib | grep '/test-nrd/B' | wc -l)
if [[ $res -ne 0 ]]
then
echo "the name '/test-nrd/B' still exists after ndn-traffic-server exit"
clean_up
exit 6
fi
clean_up
echo "nrd test PASSED"