commit 55387b0ee3d14a2f95cda605c12e39cf53959f90
parent d8cc6ab61c925ba7361b1b4ae09437aa49279b05
Author: Daniel Barlow <dan@telent.net>
Date: Sun, 7 May 2023 23:01:24 +0100
extract common shell fns in tests
Diffstat:
5 files changed, 24 insertions(+), 78 deletions(-)
diff --git a/tests/jffs2/test.nix b/tests/jffs2/test.nix
@@ -15,29 +15,6 @@ in pkgs.runCommand "check" {
socat
] ;
} ''
-serverstatedir=$(mktemp -d -t routeros-XXXXXX)
-
-killpid(){
- if test -e $1 && test -d /proc/`cat $1` ; then
- pid=$(cat $1)
- kill $pid
- fi
-}
-
-cleanup(){
- killpid $serverstatedir/pid
- test -n "$MPLCONFIGDIR" && test -d "$MPLCONFIGDIR" && rm -rf "$MPLCONFIGDIR"
- killpid foo.pid
-}
-trap cleanup EXIT
-
-fatal(){
- err=$?
- echo "FAIL: command $(eval echo $BASH_COMMAND) exited with code $err"
- exit $err
-}
-trap fatal ERR
-
mkdir vm
mips-vm --background ./vm ${img}/vmlinux ${img}/rootfs
expect ${./script.expect} >$out
diff --git a/tests/min-copy-closure/test.nix b/tests/min-copy-closure/test.nix
@@ -19,24 +19,7 @@ in pkgs.runCommand "check" {
rogue
] ;
} ''
-killpid(){
- if test -e $1 && test -d /proc/`cat $1` ; then
- pid=$(cat $1)
- kill $pid
- fi
-}
-
-cleanup(){
- killpid ./vm/pid
-}
-
-trap cleanup EXIT
-fatal(){
- err=$?
- echo "FAIL: command $(eval echo $BASH_COMMAND) exited with code $err"
- exit $err
-}
-trap fatal ERR
+. ${../test-helpers.sh}
mkdir vm
LAN=user,hostfwd=tcp::2022-:22 mips-vm --background ./vm ${img}/vmlinux ${img}/rootfs
diff --git a/tests/pppoe/test.nix b/tests/pppoe/test.nix
@@ -23,26 +23,7 @@ serverstatedir=$(mktemp -d -t routeros-XXXXXX)
# a sandbox with no $HOME, hence this environment variable
export MPLCONFIGDIR=$(mktemp -d -t routeros-XXXXXX)
-killpid(){
- if test -e $1 && test -d /proc/`cat $1` ; then
- pid=$(cat $1)
- kill $pid
- fi
-}
-
-cleanup(){
- killpid $serverstatedir/pid
- test -n "$MPLCONFIGDIR" && test -d "$MPLCONFIGDIR" && rm -rf "$MPLCONFIGDIR"
- killpid foo.pid
-}
-trap cleanup EXIT
-
-fatal(){
- err=$?
- echo "FAIL: command $(eval echo $BASH_COMMAND) exited with code $err"
- exit $err
-}
-trap fatal ERR
+. ${../test-helpers.sh}
routeros $serverstatedir
mkdir vm
diff --git a/tests/test-helpers.sh b/tests/test-helpers.sh
@@ -0,0 +1,21 @@
+killpid(){
+ if test -e $1 && test -d /proc/`cat $1` ; then
+ pid=$(cat $1)
+ kill $pid
+ fi
+}
+
+cleanup(){
+ killpid $serverstatedir/pid
+ test -n "$MPLCONFIGDIR" && test -d "$MPLCONFIGDIR" && rm -rf "$MPLCONFIGDIR"
+ killpid foo.pid
+ killpid ./vm/pid
+}
+trap cleanup EXIT
+
+fatal(){
+ err=$?
+ echo "FAIL: command $(eval echo $BASH_COMMAND) exited with code $err"
+ exit $err
+}
+trap fatal ERR
diff --git a/tests/wlan/test.nix b/tests/wlan/test.nix
@@ -15,23 +15,7 @@ in pkgs.runCommand "check" {
socat
] ;
} ''
-killpid(){
- if test -e $1 && test -d /proc/`cat $1` ; then
- pid=$(cat $1)
- kill $pid
- fi
-}
-
-cleanup(){
- killpid ./vm/pid
-}
-trap cleanup EXIT
-fatal(){
- err=$?
- echo "FAIL: command $(eval echo $BASH_COMMAND) exited with code $err"
- exit $err
-}
-trap fatal ERR
+. ${../test-helpers.sh}
mkdir vm
mips-vm --background ./vm ${img}/vmlinux ${img}/rootfs