From 86576f0f1627bf799e422d16baac5a7057de0316 Mon Sep 17 00:00:00 2001 From: Jelmer Vernooij Date: Sun, 19 Oct 2008 14:56:29 +0200 Subject: Add 'selftest' target to Samba 3 that uses the perl selftest code. --- source3/Makefile.in | 3 +++ source3/selftest/knownfail | 0 source3/selftest/quick | 0 source3/selftest/skip | 0 source3/selftest/slow | 0 source3/selftest/tests.sh | 52 ++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 55 insertions(+) create mode 100644 source3/selftest/knownfail create mode 100644 source3/selftest/quick create mode 100644 source3/selftest/skip create mode 100644 source3/selftest/slow create mode 100755 source3/selftest/tests.sh diff --git a/source3/Makefile.in b/source3/Makefile.in index 1b86c95c13..831db95b34 100644 --- a/source3/Makefile.in +++ b/source3/Makefile.in @@ -2799,6 +2799,9 @@ valgrindtest:: all torture timelimit VALGRIND="valgrind -q --num-callers=30 --log-file=${selftest_prefix}/valgrind.log" \ PERL="$(PERL)" $(srcdir)/script/tests/selftest.sh ${selftest_prefix} all "${smbtorture4_path}" +selftest:: + ../selftest/selftest.pl --prefix=st --target=samba3 --testlist="`pwd`/selftest/tests.sh|" + # Check for Winbind struct 32/64bit padding test_wbpad: @echo "Testing winbind request/response structure for 32/64bit padding" diff --git a/source3/selftest/knownfail b/source3/selftest/knownfail new file mode 100644 index 0000000000..e69de29bb2 diff --git a/source3/selftest/quick b/source3/selftest/quick new file mode 100644 index 0000000000..e69de29bb2 diff --git a/source3/selftest/skip b/source3/selftest/skip new file mode 100644 index 0000000000..e69de29bb2 diff --git a/source3/selftest/slow b/source3/selftest/slow new file mode 100644 index 0000000000..e69de29bb2 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 -- cgit