added lookup test + fix in test
[oweals/gnunet.git] / src / namestore / test_namestore_lookup.sh
1 #!/bin/bash
2 CONFIGURATION="test_namestore_api.conf"
3 trap "gnunet-arm -e -c $CONFIGURATION" SIGINT
4 rm -rf `gnunet-config -c $CONFIGURATION -s PATHS -o GNUNET_HOME`
5 TEST_IP_PLUS="127.0.0.1"
6 TEST_RECORD_NAME_DNS="www3"
7 which timeout &> /dev/null && DO_TIMEOUT="timeout 5"
8
9 function start_peer
10 {
11         gnunet-arm -s -c $CONFIGURATION
12         gnunet-identity -C testego -c $CONFIGURATION
13 }
14
15 function stop_peer
16 {
17         gnunet-identity -D testego -c $CONFIGURATION
18         gnunet-arm -e -c $CONFIGURATION
19 }
20
21
22 start_peer
23 # Create a public record
24 gnunet-namestore -p -z testego -a -n $TEST_RECORD_NAME_DNS -t A -V $TEST_IP_PLUS -e never -c $CONFIGURATION
25 NAMESTORE_RES=$?
26 # Lookup specific name
27 OUTPUT=`gnunet-namestore -p -z testego -n $TEST_RECORD_NAME_DNS -D`
28
29
30 FOUND_IP=false
31 FOUND_NAME=false
32 for LINE in $OUTPUT ;
33  do
34         if echo "$LINE" | grep -q "$TEST_RECORD_NAME_DNS"; then
35                 FOUND_NAME=true;
36                 #echo $FOUND_NAME
37         fi
38         if echo "$LINE" | grep -q "$TEST_IP_PLUS"; then
39                 FOUND_IP=true;
40                 #echo $FOUND_IP
41         fi
42  done
43 stop_peer
44
45
46 if [ $FOUND_NAME == true -a $FOUND_IP == true ]
47 then
48   echo "PASS: Lookup name in namestore"
49   exit 0
50 elif [ $FOUND_NAME == false ]
51 then
52   echo "FAIL: Lookup name in namestore: name not returned"
53   exit 1
54 elif [ $FOUND_IP == false ]
55 then
56   echo "FAIL: Lookup name in namestore: IP not returned"
57   exit 1
58 fi