summaryrefslogtreecommitdiff
path: root/deprecated-ngircd/src/testsuite/tests.sh
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-11-02 15:29:28 +0800
committerMistivia <i@mistivia.com>2025-11-02 15:29:28 +0800
commit9f42c2d5f911cb4e215d7873221e642ce7df4d61 (patch)
tree6dac90a889a7402a9556d3d1bcc5cb53cdb9f123 /deprecated-ngircd/src/testsuite/tests.sh
parentfb2d9de539b660a261af19b1cbcceb7ee7980cb1 (diff)
deprecate webircdateway and ngircd
Diffstat (limited to 'deprecated-ngircd/src/testsuite/tests.sh')
-rwxr-xr-xdeprecated-ngircd/src/testsuite/tests.sh69
1 files changed, 69 insertions, 0 deletions
diff --git a/deprecated-ngircd/src/testsuite/tests.sh b/deprecated-ngircd/src/testsuite/tests.sh
new file mode 100755
index 0000000..3e46c18
--- /dev/null
+++ b/deprecated-ngircd/src/testsuite/tests.sh
@@ -0,0 +1,69 @@
+#!/bin/sh
+#
+# ngIRCd Test Suite
+# Copyright (c)2001-2024 Alexander Barton (alex@barton.de) and Contributors.
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# Please read the file COPYING, README and AUTHORS for more information.
+#
+
+# detect source directory
+[ -z "$srcdir" ] && srcdir=`dirname "$0"`
+set -u
+
+name=`basename "$0"`
+test=`echo ${name} | cut -d '.' -f 1`
+[ -d logs ] || mkdir logs
+
+if [ ! -r "$test" ]; then
+ echo "$test: test not found" >>tests-skipped.lst
+ echo "${name}: test \"$test\" not found!"; exit 77
+ exit 1
+fi
+
+# read in functions
+. "${srcdir}/functions.inc"
+
+type expect >/dev/null 2>&1
+if [ $? -ne 0 ]; then
+ echo "$test: \"expect\" not found" >>tests-skipped.lst
+ echo "${name}: \"expect\" not found."
+ exit 77
+fi
+type telnet >/dev/null 2>&1
+if [ $? -ne 0 ]; then
+ echo "$test: \"telnet\" not found" >>tests-skipped.lst
+ echo "${name}: \"telnet\" not found."
+ exit 77
+fi
+
+case "$test" in
+ *ssl*)
+ type openssl >/dev/null 2>&1
+ if [ $? -ne 0 ]; then
+ echo "$test: \"openssl\" not found" >>tests-skipped.lst
+ echo "${name}: \"openssl\" not found."
+ exit 77
+ fi
+ ;;
+esac
+
+# prepare expect script
+e_in="${srcdir}/${test}.e"
+e_tmp="${test}.e_"
+e_exec="$e_in"
+if test -t 1 2>/dev/null; then
+ sed -e 's|^expect |puts -nonewline stderr "."; expect |g' \
+ "$e_in" >"$e_tmp"
+ [ $? -eq 0 ] && e_exec="$e_tmp"
+fi
+
+echo_n "running ${test} ..."
+expect "$e_exec" >logs/${test}.log; r=$?
+[ $r -eq 0 ] && echo " ok." || echo " failure!"
+
+rm -f "$e_tmp"
+exit $r