summaryrefslogtreecommitdiff
path: root/source3/selftest/tests.sh
diff options
context:
space:
mode:
Diffstat (limited to 'source3/selftest/tests.sh')
-rwxr-xr-xsource3/selftest/tests.sh52
1 files changed, 52 insertions, 0 deletions
diff --git a/source3/selftest/tests.sh b/source3/selftest/tests.sh
new file mode 100755
index 0000000000..3ded5686c2
--- /dev/null
+++ b/source3/selftest/tests.sh
@@ -0,0 +1,52 @@
+#!/bin/sh
+# This script generates a list of testsuites that should be run as part of
+# the Samba 3 test suite.
+
+# The output of this script is parsed by selftest.pl, which then decides
+# which of the tests to actually run. It will, for example, skip all tests
+# listed in selftest/skip or only run a subset during "make quicktest".
+
+# The idea is that this script outputs all of the tests of Samba 3, not
+# just those that are known to pass, and list those that should be skipped
+# or are known to fail in selftest/skip or selftest/samba4-knownfail. This makes it
+# very easy to see what functionality is still missing in Samba 3 and makes
+# it possible to run the testsuite against other servers, such as Samba 4 or
+# Windows that have a different set of features.
+
+# The syntax for a testsuite is "-- TEST --" on a single line, followed
+# by the name of the test, the environment it needs and the command to run, all
+# three separated by newlines. All other lines in the output are considered
+# comments.
+
+if [ ! -n "$PERL" ]
+then
+ PERL=perl
+fi
+
+plantest() {
+ name=$1
+ env=$2
+ shift 2
+ cmdline="$*"
+ echo "-- TEST --"
+ if [ "$env" = "none" ]; then
+ echo "samba3.$name"
+ else
+ echo "samba3.$name ($env)"
+ fi
+ echo $env
+ echo $cmdline
+}
+
+normalize_testname() {
+ name=$1
+ shift 1
+ echo $name | tr "A-Z-" "a-z."
+}
+
+BINDIR=`dirname $0`/../bin
+
+plantest "talloctort" none $VALGRIND $BINDIR/talloctort
+plantest "replacetort" none $VALGRIND $BINDIR/replacetort
+plantest "tdbtorture" none $VALGRIND $BINDIR/tdbtorture
+plantest "smbconftort" none $VALGRIND $BINDIR/smbconftort $CONFIGURATION