db0a8a0ac15e36729f8127cc5051fc9946a1bd1e
[kai/samba-autobuild/.git] / source3 / selftest / s3-selftest.sh
1 #!/bin/sh
2
3 FILTER_XFAIL="${PYTHON} -u ${SELFTESTDIR}/filter-subunit --expected-failures=${SELFTESTDIR}/knownfail --expected-failures=${SELFTESTDIR}/flapping"
4 if [ "x${SUBUNIT_FORMATTER}" = x"" ]; then
5         SUBUNIT_FORMATTER="${PYTHON} -u ${SELFTESTDIR}/format-subunit --prefix=${SELFTESTPREFIX} --immediate"
6 fi
7
8 cleanup_and_exit() {
9         if test "$1" = 0 -o -z "$1"; then
10                 exit 0
11         else
12                 exit $1
13         fi
14 }
15
16 st_test_done() {
17         test -f ${SELFTESTPREFIX}/st_done || { echo "SELFTEST FAILED"; cleanup_and_exit 1; }
18 }
19
20 if [ "x${RUN_FROM_BUILD_FARM}" = "xyes" ]; then
21         ( rm -f ${SELFTESTPREFIX}/st_done && \
22                 ${PERL} ${SELFTESTDIR}/selftest.pl \
23                         --binary-mapping=smbtorture3:smbtorture,nmblookup3:nmblookup,smbclient3:smbclient,ntlm_auth3:ntlm_auth \
24                         --prefix=${SELFTESTPREFIX} --target=samba3 \
25                         --testlist="${PYTHON} ${SOURCEDIR}/selftest/tests.py|" \
26                         --exclude=${SELFTESTDIR}/skip \
27                         --srcdir="${SOURCEDIR}/.." \
28                         --socket-wrapper ${TESTS} \
29         && touch ${SELFTESTPREFIX}/st_done ) | \
30                 ${FILTER_XFAIL} --strip-passed-output
31         EXIT_STATUS=$?
32
33         st_test_done
34 else
35         ( rm -f ${SELFTESTPREFIX}/st_done && \
36                 ${PERL} ${SELFTESTDIR}/selftest.pl \
37                         --binary-mapping=smbtorture3:smbtorture,nmblookup3:nmblookup,smbclient3:smbclient,ntlm_auth3:ntlm_auth \
38                         --prefix=${SELFTESTPREFIX} --target=samba3 \
39                         --testlist="${PYTHON} ${SOURCEDIR}/selftest/tests.py|" \
40                         --exclude=${SELFTESTDIR}/skip \
41                         --srcdir="${SOURCEDIR}/.." \
42                         --socket-wrapper ${TESTS} \
43         && touch ${SELFTESTPREFIX}/st_done ) | \
44                 ${FILTER_XFAIL} | ${SUBUNIT_FORMATTER}
45         EXIT_STATUS=$?
46
47         st_test_done
48 fi
49
50 cleanup_and_exit ${EXIT_STATUS}