1check_PROGRAMS=dehex spam_header_name dumbhead deqp deb64 escnp abortme \
2	       u_fpe wantcore leakmem ctype
3
4AM_CPPFLAGS = -I$(srcdir)/..
5LDADD = ../libbogofilter.a
6
7BUILT_SOURCES = t.config t.query.config
8CLEANFILES= $(BUILT_SOURCES)
9
10t.config: Makefile
11	( echo  >$@ 'EXE_EXT="@EXEEXT@"' ; \
12	  echo >>$@  'DB_EXT="@DB_EXT@"' ; \
13	  echo >>$@ 'DB_TYPE="@DB_TYPE@"'; \
14	  echo >>$@ 'USE_TRANSACTIONS="@USE_TRANSACTIONS@"' ; \
15	  echo >>$@ 'USE_UNICODE="@USE_UNICODE@"' ) || rm -f $@
16
17t.query.config: t.query.config.in Makefile
18	rm -f $@
19	cat $(srcdir)/t.query.config.in | \
20	sed 's/[@]ENCODING[@]/@ENCODING@/' | \
21	sed 's/[@]DEFAULT_CHARSET[@]/@DEFAULT_CHARSET@/' > $@ || rm -f $@
22	chmod +x t.query.config
23
24ENVIRON_TESTS = t.abort t.env t.ctype t.bogodir t.leakfind t.u_fpe
25
26if ENABLE_UNICODE
27ENCODING_TESTS=t.encoding
28endif
29
30PARSING_TESTS = \
31	t.longoptions \
32	t.ignore_spam_header \
33	t.nullstatsprefix \
34	t.integrity t.integrity2 t.integrity3 \
35	t.passthrough-hb t.passthrough-truncation \
36	t.escaped.html t.escaped.url \
37	t.base64 t.split t.parsing \
38	t.lexer t.lexer.mbx t.lexer.qpcr t.lexer.eoh \
39	  t.lexer.boundary-- t.fgetsl.abort \
40	t.sf-bug-121 t.sf-bug-122 t.sf-bug-124 \
41	t.spam.header.place \
42	t.block.on.subnets \
43	t.token.count \
44	t.multiple.tokens.head t.multiple.tokens.body t.multiple.tokens.min.mul \
45	$(ENCODING_TESTS) \
46	t.rfc2047_broken t.rfc2047_folded \
47	t.crash-invalid-base64 \
48	t.message_addr t.message_id t.queue_id
49
50WORDLIST_TESTS = t.dump.load t.nonascii.replace t.maint t.robx t.regtest t.upgrade.subnet.prefix t.multiple.wordlists t.probe t.bf_compact
51
52SCORING_TESTS = t.score1 t.score2 t.systest t.grftest t.wordhist
53
54BULKMODE_TESTS = t.bulkmode t.MH t.maildir t.bogoutil
55
56INTEGRITY_TESTS = t.lock1 t.lock3 t.valgrind
57# INTEGRITY_TESTS += t.lock2
58
59# these tests are built, but must not be shipped:
60BUILT_TESTS = t.query.config
61
62# test scripts expected to fail
63XFAIL_TESTS =
64
65TESTSCRIPTS = ${ENVIRON_TESTS} ${PARSING_TESTS} ${WORDLIST_TESTS} ${SCORING_TESTS} ${BULKMODE_TESTS} ${INTEGRITY_TESTS}
66
67TESTS=$(BUILT_TESTS) $(TESTSCRIPTS)
68
69LOG_COMPILER=env RUN_FROM_MAKE=1 AWK=$(AWK) srcdir=$(srcdir) SHELL="$(SHELL)" $(SHELL) $(VERBOSE)
70
71EXTRA_DIST=$(TESTSCRIPTS) t.frame t.save t.skel \
72	printcore t._abort unsort.pl \
73	t.query.config.in \
74	run.sh \
75	inputs/dump.load.inp \
76	inputs/dump.load.upd \
77	inputs/good.mbx \
78	inputs/headerbody.txt \
79	inputs/lexer.inp \
80	inputs/lexer.mbx \
81	inputs/lexer.out \
82	inputs/mime-qp-cont-with-cr.txt \
83	inputs/msg.1.txt \
84	inputs/msg.2.txt \
85	inputs/msg.3.txt \
86	inputs/msg.4.txt \
87	inputs/msg.5.txt \
88	inputs/msg.6.txt \
89	inputs/msg.7.txt \
90	inputs/msg.8.txt \
91	inputs/msg.flex \
92	inputs/msg.parsing.txt \
93	inputs/msg.regtest.n \
94	inputs/msg.regtest.s \
95	inputs/msg.split.bg.0117.text \
96	inputs/msg.split.dr.0118.base64 \
97	inputs/msg.split.gs.0119.text \
98	inputs/spam.mbx \
99	inputs/t.passthrough-truncation-in.gz \
100	inputs/input-sf-bug-124-yyinput-tmin.gz \
101	inputs/input-sf-bug-124-count-tmin.gz \
102	inputs/input-sf-bug-124-buffshift-tmin.gz \
103	inputs/input-sf-bug-122-buffadd-tmin.gz \
104	inputs/input-sf-bug-122-buffadd-tmin2.gz \
105	inputs/gconv-tmin2.gz \
106	outputs/MH.out \
107	outputs/bogolex.out \
108	outputs/bulkmode.out \
109	outputs/dump.load-1.out \
110	outputs/dump.load-2.out \
111	outputs/dump.load-3.out \
112	outputs/dump.load-4.out \
113	outputs/dump.load-5.out \
114	outputs/dump.load-6.out \
115	outputs/grftest.out \
116	outputs/lexer.out \
117	outputs/maildir.out \
118	outputs/message_addr.ref \
119	outputs/message_id.ref \
120	outputs/mime-qp-cont-with-cr.exp \
121	outputs/msg.1.v \
122	outputs/msg.2a.vv \
123	outputs/msg.2a.vvv \
124	outputs/msg.2b.vv \
125	outputs/msg.2b.vvv \
126	outputs/msg.3.vvv \
127	outputs/multiple.wordlists.ref \
128	outputs/parsing.out \
129	outputs/queue_id.ref \
130	outputs/split.out \
131	outputs/token.count.ref
132