X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=src%2Fscalarproduct%2Ftest_scalarproduct.sh;h=eed9de30fe41cedf3c8d5559da1708917353a978;hb=cea95af17bb3bfaf65224d0ecd2db2308e333764;hp=0ac0d82fcb0997e5d666886b29b2a4fa92404a40;hpb=d3058d01f5df711d884d94a713ec7120a4eb62d9;p=oweals%2Fgnunet.git diff --git a/src/scalarproduct/test_scalarproduct.sh b/src/scalarproduct/test_scalarproduct.sh index 0ac0d82fc..eed9de30f 100755 --- a/src/scalarproduct/test_scalarproduct.sh +++ b/src/scalarproduct/test_scalarproduct.sh @@ -1,27 +1,45 @@ #!/bin/bash +# compute a simple scalar product +# payload for this test: +INPUTALICE="-k CCC -e 'AB,10;RO,3;FL,3;LOL,-1;'" +INPUTBOB="-k CCC -e 'BC,-20000;RO,1000;FL,100;LOL,24;'" -#necessary to make the testing prefix deterministic, so we can access the config files -GNUNET_TESTING_PREFIX=/tmp/test-scalarproduct`date +%H%M%S` -CFGALICE="-c $GNUNET_TESTING_PREFIX/0/config" -CFGBOB="-c $GNUNET_TESTING_PREFIX/1/config" +# necessary to make the testing prefix deterministic, so we can access the config files +PREFIX=/tmp/test-scalarproduct`date +%H%M%S` -../testbed/gnunet-testbed-profiler -c test_scalarproduct.conf -p 2 2>gnunet_error.log & +# where can we find the peers config files? +CFGALICE="-c $PREFIX/0/config" +CFGBOB="-c $PREFIX/1/config" + +# launch two peers in line topology non-interactively +# +# interactive mode would terminate the test immediately +# because the rest of the script is already in stdin, +# thus redirecting stdin does not suffice) +#GNUNET_LOG='scalarproduct;;;;DEBUG' +GNUNET_TESTING_PREFIX=$PREFIX ../testbed/gnunet-testbed-profiler -n -c test_scalarproduct.conf -p 2 & +PID=$! +# sleep 1 is too short on most systems, 2 works on most, 5 seems to be safe sleep 5 -PEERIDBOB=`gnunet-peerinfo -qs $CFGB` -INPUTALICE="-k AAAA -e 10,10,10" -INPUTBOB="-k AAAA -e 10,10,10" -EXPECTED="2C0" +# get bob's peer ID, necessary for alice +PEERIDBOB=`gnunet-peerinfo -qs $CFGBOB` + +#GNUNET_LOG=';;;;DEBUG' +gnunet-scalarproduct $CFGBOB $INPUTBOB & +GNUNET_LOG=';;;;DEBUG' +RESULT=`gnunet-scalarproduct $CFGALICE $INPUTALICE -p $PEERIDBOB` -gnunet-scalarproduct $CFGBOB $INPUTBOB -RESULT=`gnunet-scalarproduct $CFGALICE $INPUTALICE -p $PEERIDBOB 2>client_error.log` +# terminate the testbed +kill $PID +EXPECTED="0CCC" if [ "$RESULT" == "$EXPECTED" ] then - echo "OK" - exit 0 + echo "OK" + exit 0 else - echo "Result $RESULT NOTOK" - exit 1 + echo "Result $RESULT NOTOK" + exit 1 fi