doc: final revise of the document
[p2p-kernel-protocol.git] / test / test.sh
index d36d0fe..f924cb2 100755 (executable)
@@ -4,39 +4,62 @@ MODULE_NAME=af_p2pkp
 MODULE_DIR=../module
 CLIENT=client/client
 SERVER=server/server
+FILE=/tmp/testfile32
+OUTPUT_DIR=/tmp
 IP="127.0.0.1"
+WAIT_TIME=3
 
 LISTENERS_PORTS=(
        60000
        60001
+       60002
+       60003
+       60004
+       60005
 )
 
 
 #use nc.traditional
 echo 2 | update-alternatives --config nc &> /dev/null
 
+[ -d $OUTPUT_DIR ] || mkdir -p $OUTPUT_DIR
+
 #increase tests debugging
-set -x
+#set -x
 
 # insert module, causing the message to be sent
 insmod $MODULE_DIR/$MODULE_NAME.ko
 
 # listen for UDP packets on localhost, port 60000 (run in background)
 for port in "${LISTENERS_PORTS[@]}"; do
-       $SERVER $IP $port testfile.$port &
+       $SERVER $IP $port $OUTPUT_DIR/testfile.$port &
        pids="$pids $!"
        ARGUMENTS="$IP $port $ARGUMENTS"
 done
 
 # wait for netcat to start listening
-sleep 1
+sleep $WAIT_TIME
+
+
+if [ $# -eq 0 ]; then
+       [ -e $FILE ] || exit
+       $CLIENT $FILE $ARGUMENTS
+else
+       for file in $@; do
+               [ -e $file ] || continue
+               $CLIENT $file $ARGUMENTS
+       done
+fi
 
-$CLIENT $ARGUMENTS
 
+sleep $WAIT_TIME
 # kill netcat
 for pid in $pids; do
-       wait $pid &> /dev/null
+       kill -9 $pid &> /dev/null
 done
+#for pid in $pids; do
+#      wait $pid &> /dev/null
+#done
 
 # remove module
 rmmod $MODULE_NAME