aboutsummaryrefslogtreecommitdiffstats
path: root/nologin-test/test
diff options
context:
space:
mode:
Diffstat (limited to 'nologin-test/test')
-rwxr-xr-xnologin-test/test57
1 files changed, 57 insertions, 0 deletions
diff --git a/nologin-test/test b/nologin-test/test
new file mode 100755
index 0000000..846c0a7
--- /dev/null
+++ b/nologin-test/test
@@ -0,0 +1,57 @@
+#!/bin/bash
+
+cd -- "$(dirname "$0")"
+if test -z "$NOLOGIN"; then
+ NOLOGIN=../nologin
+fi
+n="$PREFIX $NOLOGIN"
+
+report ()
+{
+ if test $1 = 0; then
+ printf "\033[1;32mTest %s OK\033[m\n" "$2"
+ else
+ printf "\033[1;31mTest %s FAILED\033[m\n" "$2"
+ fi
+}
+
+
+
+exitvalue ()
+{
+ ! $n > /dev/null
+ report $? "exitvalue"
+}
+
+message ()
+{
+ if test -f /etc/nologin.txt; then
+ diff <($n) /etc/nologin.txt > /dev/null
+ report $? "message (with /etc/nologin.txt)"
+ else
+ test "$($n)" != ""
+ report $? "message (without /etc/nologin.txt)"
+ fi
+}
+
+
+
+if test $# = 0; then
+ set exitvalue message
+fi
+(
+for f in $@; do
+ $f
+done
+) | tee result
+! grep FAILED < result > /dev/null
+ret=$?
+if test $ret != 0; then
+ if test $(grep FAILED < result | grep -v NON-STANDARD | wc -l) = 0; then
+ ret=1
+ else
+ ret=2
+ fi
+fi
+rm result
+exit $ret