Preliminary version of the first test
authorMichal Sojka <sojkam1@fel.cvut.cz>
Mon, 29 Nov 2010 14:40:51 +0000 (15:40 +0100)
committerMichal Sojka <sojkam1@fel.cvut.cz>
Mon, 29 Nov 2010 14:40:51 +0000 (15:40 +0100)
gw-tests/gw-nop.sh
gw-tests/lib.sh

index acada91..4870bf7 100755 (executable)
@@ -2,6 +2,10 @@
 
 . lib.sh
 
-
-
+main() {
+    sshgw cangw -A -s can0 -d can1
+    latester -d can0 -d can1 -d can2 -c 10000
+}
+    
 test_end
+    
index c27cd0d..3ea4153 100644 (file)
@@ -1,4 +1,3 @@
-set -x
 set -e
 
 PATH=$PWD/../_compiled/bin/:$PATH
@@ -9,11 +8,22 @@ error() {
 }
 
 sshgw() {
-    ssh root@192.168.2.3 "$@"
+    local socket="$HOME/.ssh/cangw-connection"
+
+    if [[ ! -S $socket ]]; then
+        # Create master connection to speed up subsequenct command.
+        # The ssh is put into background and the connection is closed
+        # after 10 minutes)
+       ssh -f -M -S $socket root@192.168.2.3 sleep 600 > /dev/null 2>&1
+    fi
+    ssh -x -a -S $socket root@192.168.2.3 "$@"
 }
 
-initgw() {
-    sshgw 'for i in 0 1; do ip link set can$i up type can bitrate 1000000; done'
+cleanupgw() {
+    # Set can interfaces up
+    sshgw 'for i in 0 1; do ip link show dev can$i|grep -q UP || ip link set can$i up type can bitrate 1000000; done'
+    # Delete all GW rules
+    sshgw 'eval $(cangw -L|sed -e s/-A/-D/ -e "s/#.*/;/")'
 }
 
 plot() {
@@ -40,30 +50,26 @@ plot() {
 create_dirs_and_links() {
     local test=$1
     local kver=$2
-    local clck=$3
 
-    local  d=results/by-kern/$kver/$clck/$test
+    set -x
+    local  d=results/by-kern/$kver/$test
     mkdir -p $d
-    mkdir -p results/by-kern/$kver/$test # 1
-    mkdir -p results/by-test/$test/$kver # 2
-    mkdir -p results/by-test/$test/$clck # 3
-    mkdir -p results/by-clck/$clck/$kver # 4
-    mkdir -p results/by-clck/$clck/$test # 5
-    ln -sfT ../../../${d#results/} results/by-kern/$kver/$test/$clck # 1
-    ln -sfT ../../../${d#results/} results/by-test/$test/$kver/$clck # 2
-    ln -sfT ../../../${d#results/} results/by-test/$test/$clck/$kver # 3
-    ln -sfT ../../../${d#results/} results/by-clck/$clck/$kver/$test # 4
-    ln -sfT ../../../${d#results/} results/by-clck/$clck/$test/$kver # 5
+    mkdir -p results/by-test/$test
+    ln -sfT ../../${d#results/} results/by-test/$test/$kver
     echo $d
 }
 
-run() {
-    initgw
+_run() {
+    cleanupgw
+    dir=$(create_dirs_and_links $(basename $0 .sh)  $(sshgw uname -r))
+    cd $dir
+    main
 }
 
 test_end() {
     test_end_called=t
-    run
+    trap '' DEBUG
+    _run
 }
 
 exit() {