s4:ldap.py - split it up and move SAM related stuff to sam.py
[kai/samba-autobuild/.git] / source4 / selftest / config.mk
1 SELFTEST = $(LD_LIBPATH_OVERRIDE) PYTHON=$(PYTHON) \
2     $(PERL) $(selftestdir)/selftest.pl --prefix=${selftest_prefix} \
3     --builddir=$(builddir) --srcdir=$(srcdir) \
4     --exclude=$(srcdir)/selftest/skip --testlist="./selftest/tests.sh|" \
5     $(TEST_OPTIONS)
6 # this strange code is to handle the fact that the bash pipefail option is 
7 # not portable. When we run selftest we use a pipeline, and the first element
8 # of that pipeline might abort. We need to catch this and mark the test
9 # as having failed
10 ST_RM = ( rm -f $(selftest_prefix)/st_done && 
11 ST_TOUCH = && touch $(selftest_prefix)/st_done ) 
12 ST_DONE_TEST = @test -f $(selftest_prefix)/st_done || { echo "SELFTEST FAILED"; exit 1; }
13
14 SELFTEST_NOSLOW_OPTS = --exclude=$(srcdir)/selftest/slow
15 SELFTEST_QUICK_OPTS = $(SELFTEST_NOSLOW_OPTS) --quick --include=$(srcdir)/selftest/quick
16 FILTER_XFAIL = $(PYTHON) -u $(selftestdir)/filter-subunit --expected-failures=$(srcdir)/selftest/knownfail
17 SUBUNIT_FORMATTER ?= $(PYTHON) -u $(selftestdir)/format-subunit --prefix=${selftest_prefix} --immediate
18 FORMAT_TEST_OUTPUT = $(FILTER_XFAIL) | $(SUBUNIT_FORMATTER)
19
20 test-subunit:: everything
21         $(ST_RM) $(SELFTEST) --socket-wrapper $(TESTS) $(ST_TOUCH)
22         $(ST_DONE_TEST)
23
24 test-subunit-filtered:: everything
25         $(ST_RM) $(SELFTEST) --socket-wrapper $(TESTS) $(ST_TOUCH) | $(FILTER_XFAIL)
26         $(ST_DONE_TEST)
27
28 slowtest:: everything
29         $(ST_RM) $(SELFTEST) $(DEFAULT_TEST_OPTIONS) $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
30         $(ST_DONE_TEST)
31
32 ifeq ($(RUN_FROM_BUILD_FARM),yes)
33 test:: everything
34         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) $(DEFAULT_TEST_OPTIONS) $(TESTS) $(ST_TOUCH) | $(FILTER_XFAIL) --strip-passed-output
35         $(ST_DONE_TEST)
36         test -f ${selftest_prefix}/summary && cat ${selftest_prefix}/summary
37 else
38 test:: 
39         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) $(DEFAULT_TEST_OPTIONS) $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
40         $(ST_DONE_TEST)
41 endif
42
43 kvmtest:: everything
44         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) $(DEFAULT_TEST_OPTIONS) \
45                 --target=kvm --image=$(KVM_IMAGE) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
46         $(ST_DONE_TEST)
47
48 kvmquicktest:: everything
49         $(ST_RM) $(SELFTEST) $(DEFAULT_TEST_OPTIONS) \
50                 $(SELFTEST_QUICK_OPTS) --target=kvm --image=$(KVM_IMAGE) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
51         $(ST_DONE_TEST)
52
53 testone:: everything
54         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) $(DEFAULT_TEST_OPTIONS) --one $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
55         $(ST_DONE_TEST)
56
57 test-swrap:: everything
58         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
59         $(ST_DONE_TEST)
60
61 test-swrap-pcap:: everything
62         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper-pcap $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
63         $(ST_DONE_TEST)
64
65 test-swrap-keep-pcap:: everything
66         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper-keep-pcap $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
67         $(ST_DONE_TEST)
68
69 test-noswrap:: everything
70         $(ST_RM) $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
71         $(ST_DONE_TEST)
72
73 quicktest:: all
74         $(ST_RM) $(SELFTEST) $(SELFTEST_QUICK_OPTS) --socket-wrapper $(TESTS) $(ST_TOUCH) | $(FORMAT_TEST_OUTPUT)
75         $(ST_DONE_TEST)
76
77 quicktest-subunit:: all
78         $(ST_RM) $(SELFTEST) $(SELFTEST_QUICK_OPTS) --socket-wrapper $(TESTS) $(ST_TOUCH)
79         $(ST_DONE_TEST)
80
81 quicktestone:: all
82         $(ST_RM) $(SELFTEST) $(SELFTEST_QUICK_OPTS) --socket-wrapper --one $(TESTS) | $(FORMAT_TEST_OUTPUT)
83         $(ST_DONE_TEST)
84
85 testenv:: everything
86         $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper --testenv
87
88 testenv-%:: everything
89         SELFTEST_TESTENV=$* $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper --testenv
90
91 test-%:: 
92         $(MAKE) test TESTS=$*
93
94 valgrindtest:: valgrindtest-all
95
96 valgrindtest-quick:: all
97         SAMBA_VALGRIND="xterm -n server -e $(selftestdir)/valgrind_run $(LD_LIBPATH_OVERRIDE)" \
98         VALGRIND="valgrind -q --num-callers=30 --log-file=${selftest_prefix}/valgrind.log" \
99         $(SELFTEST) $(SELFTEST_QUICK_OPTS) --socket-wrapper $(TESTS) | $(FORMAT_TEST_OUTPUT)
100
101 valgrindtest-all:: everything
102         SAMBA_VALGRIND="xterm -n server -e $(selftestdir)/valgrind_run $(LD_LIBPATH_OVERRIDE)" \
103         VALGRIND="valgrind -q --num-callers=30 --log-file=${selftest_prefix}/valgrind.log" \
104         $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper $(TESTS) | $(FORMAT_TEST_OUTPUT)
105
106 valgrindtest-env:: everything
107         SAMBA_VALGRIND="xterm -n server -e $(selftestdir)/valgrind_run $(LD_LIBPATH_OVERRIDE)" \
108         VALGRIND="valgrind -q --num-callers=30 --log-file=${selftest_prefix}/valgrind.log" \
109         $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper --testenv
110
111 gdbtest:: gdbtest-all
112
113 gdbtest-quick:: all
114         SAMBA_VALGRIND="xterm -n server -e $(selftestdir)/gdb_run $(LD_LIBPATH_OVERRIDE)" \
115         $(SELFTEST) $(SELFTEST_QUICK_OPTS) --socket-wrapper $(TESTS) | $(FORMAT_TEST_OUTPUT)
116
117 gdbtest-all:: everything
118         SAMBA_VALGRIND="xterm -n server -e $(selftestdir)/gdb_run $(LD_LIBPATH_OVERRIDE)" \
119         $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper $(TESTS) | $(FORMAT_TEST_OUTPUT)
120
121 gdbtest-env:: everything
122         SAMBA_VALGRIND="xterm -n server -e $(selftestdir)/gdb_run $(LD_LIBPATH_OVERRIDE)" \
123         $(SELFTEST) $(SELFTEST_NOSLOW_OPTS) --socket-wrapper --testenv
124