summaryrefslogtreecommitdiffstats
path: root/tests/subdir.am
blob: 7d2800a3a2a8e81d6e8c5548a01a20080edf649c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
#
# tests
#

PYTHON ?= python

if BGPD
TESTS_BGPD = \
	tests/bgpd/test_aspath \
	tests/bgpd/test_capability \
	tests/bgpd/test_packet \
	tests/bgpd/test_peer_attr \
	tests/bgpd/test_ecommunity \
	tests/bgpd/test_mp_attr \
	tests/bgpd/test_mpath \
	tests/bgpd/test_bgp_table
else
TESTS_BGPD =
endif

if ISISD
if SOLARIS
TESTS_ISISD =
else
TESTS_ISISD = \
	tests/isisd/test_fuzz_isis_tlv \
	tests/isisd/test_isis_lspdb \
	tests/isisd/test_isis_vertex_queue \
	# end
endif
else
TESTS_ISISD =
endif

if OSPF6D
TESTS_OSPF6D = \
	tests/ospf6d/test_lsdb \
	# end
else
TESTS_OSPF6D =
endif

tests/lib/cli/tests_lib_cli_test_cli-test_cli.$(OBJEXT): tests/lib/cli/test_cli_clippy.c
tests/lib/cli/test_cli-test_cli.$(OBJEXT): tests/lib/cli/test_cli_clippy.c
tests/ospf6d/tests_ospf6d_test_lsdb-test_lsdb.$(OBJEXT): tests/ospf6d/test_lsdb_clippy.c
tests/ospf6d/test_lsdb-test_lsdb.$(OBJEXT): tests/ospf6d/test_lsdb_clippy.c

check_PROGRAMS = \
	tests/lib/test_buffer \
	tests/lib/test_checksum \
	tests/lib/test_heavy_thread \
	tests/lib/test_heavy_wq \
	tests/lib/test_heavy \
	tests/lib/test_idalloc \
	tests/lib/test_memory \
	tests/lib/test_nexthop_iter \
	tests/lib/test_privs \
	tests/lib/test_ringbuf \
	tests/lib/test_srcdest_table \
	tests/lib/test_segv \
	tests/lib/test_sig \
	tests/lib/test_stream \
	tests/lib/test_table \
	tests/lib/test_timer_correctness \
	tests/lib/test_timer_performance \
	tests/lib/test_ttable \
	tests/lib/test_zlog \
	tests/lib/test_graph \
	tests/lib/cli/test_cli \
	tests/lib/cli/test_commands \
	tests/lib/northbound/test_oper_data \
	$(TESTS_BGPD) \
	$(TESTS_ISISD) \
	$(TESTS_OSPF6D) \
	# end

if ZEROMQ
check_PROGRAMS += \
	tests/lib/test_zmq \
	# end
endif

tests/lib/cli/test_commands_defun.c: vtysh/vtysh_cmd.c
	sed \
		-e 's%"vtysh/vtysh\.h"%"tests/helpers/c/tests.h"%' \
		-e 's/vtysh_init_cmd/test_init_cmd/' \
		-e 's/VTYSH_[A-Z][A-Z_0-9]*/0/g' \
		< vtysh/vtysh_cmd.c \
		> "$@"
CLEANFILES += tests/lib/cli/test_commands_defun.c

tests/isisd/test_fuzz_isis_tlv_tests.h: $(top_srcdir)/tests/isisd/test_fuzz_isis_tlv_tests.h.gz
	gzip -d < $(top_srcdir)/tests/isisd/test_fuzz_isis_tlv_tests.h.gz > "$@"
CLEANFILES += tests/isisd/test_fuzz_isis_tlv_tests.h

tests/isisd/tests_isisd_test_fuzz_isis_tlv-test_fuzz_isis_tlv.$(OBJEXT): \
	tests/isisd/test_fuzz_isis_tlv_tests.h
tests/isisd/test_fuzz_isis_tlv-test_fuzz_isis_tlv.$(OBJEXT): \
	tests/isisd/test_fuzz_isis_tlv_tests.h

noinst_HEADERS += \
	tests/helpers/c/prng.h \
	tests/helpers/c/tests.h \
	tests/lib/cli/common_cli.h \
	# end

#
# *sigh* - there is no way to get CPPFLAGS or CFLAGS for a group of files :(
#

TESTS_CPPFLAGS = $(AM_CPPFLAGS) \
	-I$(top_srcdir)/tests/helpers/c \
	-I$(top_builddir)/tests/helpers/c \
	# end
TESTS_CFLAGS = $(SAN_FLAGS)
# note no -Werror

ALL_TESTS_LDADD = lib/libfrr.la @LIBCAP@
BGP_TEST_LDADD = bgpd/libbgp.a $(RFPLDADD) $(ALL_TESTS_LDADD) -lm
ISISD_TEST_LDADD = isisd/libisis.a $(ALL_TESTS_LDADD)
OSPF6_TEST_LDADD = ospf6d/libospf6.a $(ALL_TESTS_LDADD)

tests_bgpd_test_aspath_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_aspath_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_aspath_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_aspath_SOURCES = tests/bgpd/test_aspath.c
tests_bgpd_test_bgp_table_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_bgp_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_bgp_table_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_bgp_table_SOURCES = tests/bgpd/test_bgp_table.c
tests_bgpd_test_capability_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_capability_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_capability_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_capability_SOURCES = tests/bgpd/test_capability.c
tests_bgpd_test_ecommunity_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_ecommunity_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_ecommunity_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_ecommunity_SOURCES = tests/bgpd/test_ecommunity.c
tests_bgpd_test_mp_attr_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_mp_attr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_mp_attr_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_mp_attr_SOURCES = tests/bgpd/test_mp_attr.c
tests_bgpd_test_mpath_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_mpath_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_mpath_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_mpath_SOURCES = tests/bgpd/test_mpath.c
tests_bgpd_test_packet_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_packet_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_packet_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_packet_SOURCES = tests/bgpd/test_packet.c
tests_bgpd_test_peer_attr_CFLAGS = $(TESTS_CFLAGS)
tests_bgpd_test_peer_attr_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_bgpd_test_peer_attr_LDADD = $(BGP_TEST_LDADD)
tests_bgpd_test_peer_attr_SOURCES = tests/bgpd/test_peer_attr.c

tests_isisd_test_fuzz_isis_tlv_CFLAGS = $(TESTS_CFLAGS) -I$(top_builddir)/tests/isisd
tests_isisd_test_fuzz_isis_tlv_CPPFLAGS = $(TESTS_CPPFLAGS) -I$(top_builddir)/tests/isisd
tests_isisd_test_fuzz_isis_tlv_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_fuzz_isis_tlv_SOURCES = tests/isisd/test_fuzz_isis_tlv.c
nodist_tests_isisd_test_fuzz_isis_tlv_SOURCES = tests/isisd/test_fuzz_isis_tlv_tests.h
tests_isisd_test_isis_lspdb_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_lspdb_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_lspdb_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_lspdb_SOURCES = tests/isisd/test_isis_lspdb.c
tests_isisd_test_isis_vertex_queue_CFLAGS = $(TESTS_CFLAGS)
tests_isisd_test_isis_vertex_queue_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_isisd_test_isis_vertex_queue_LDADD = $(ISISD_TEST_LDADD)
tests_isisd_test_isis_vertex_queue_SOURCES = tests/isisd/test_isis_vertex_queue.c

tests_lib_cli_test_cli_CFLAGS = $(TESTS_CFLAGS)
tests_lib_cli_test_cli_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cli_test_cli_LDADD = $(ALL_TESTS_LDADD)
tests_lib_cli_test_cli_SOURCES = tests/lib/cli/test_cli.c tests/lib/cli/common_cli.c
tests_lib_cli_test_commands_CFLAGS = $(TESTS_CFLAGS)
tests_lib_cli_test_commands_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_cli_test_commands_LDADD = $(ALL_TESTS_LDADD)
nodist_tests_lib_cli_test_commands_SOURCES = tests/lib/cli/test_commands_defun.c
tests_lib_cli_test_commands_SOURCES = tests/lib/cli/test_commands.c tests/helpers/c/prng.c
tests_lib_northbound_test_oper_data_CFLAGS = $(TESTS_CFLAGS)
tests_lib_northbound_test_oper_data_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_northbound_test_oper_data_LDADD = $(ALL_TESTS_LDADD)
tests_lib_northbound_test_oper_data_SOURCES = tests/lib/northbound/test_oper_data.c
nodist_tests_lib_northbound_test_oper_data_SOURCES = yang/frr-test-module.yang.c
tests_lib_test_buffer_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_buffer_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_buffer_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_buffer_SOURCES = tests/lib/test_buffer.c
tests_lib_test_checksum_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_checksum_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_checksum_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_checksum_SOURCES = tests/lib/test_checksum.c
tests_lib_test_graph_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_graph_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_graph_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_graph_SOURCES = tests/lib/test_graph.c
tests_lib_test_heavy_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_SOURCES = tests/lib/test_heavy.c tests/helpers/c/main.c
tests_lib_test_heavy_thread_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_thread_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_thread_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_thread_SOURCES = tests/lib/test_heavy_thread.c tests/helpers/c/main.c
tests_lib_test_heavy_wq_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_heavy_wq_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_heavy_wq_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_heavy_wq_SOURCES = tests/lib/test_heavy_wq.c tests/helpers/c/main.c
tests_lib_test_idalloc_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_idalloc_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_idalloc_SOURCES = tests/lib/test_idalloc.c
tests_lib_test_memory_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_memory_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_memory_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_memory_SOURCES = tests/lib/test_memory.c
tests_lib_test_nexthop_iter_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_nexthop_iter_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_nexthop_iter_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_nexthop_iter_SOURCES = tests/lib/test_nexthop_iter.c tests/helpers/c/prng.c
tests_lib_test_privs_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_privs_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_privs_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_privs_SOURCES = tests/lib/test_privs.c
tests_lib_test_ringbuf_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ringbuf_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_ringbuf_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_ringbuf_SOURCES = tests/lib/test_ringbuf.c
tests_lib_test_segv_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_segv_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_segv_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_segv_SOURCES = tests/lib/test_segv.c
tests_lib_test_sig_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_sig_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_sig_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_sig_SOURCES = tests/lib/test_sig.c
tests_lib_test_srcdest_table_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_srcdest_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_srcdest_table_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_srcdest_table_SOURCES = tests/lib/test_srcdest_table.c tests/helpers/c/prng.c
tests_lib_test_stream_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_stream_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_stream_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_stream_SOURCES = tests/lib/test_stream.c
tests_lib_test_table_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_table_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_table_LDADD = $(ALL_TESTS_LDADD) -lm
tests_lib_test_table_SOURCES = tests/lib/test_table.c
tests_lib_test_timer_correctness_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_timer_correctness_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_timer_correctness_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_timer_correctness_SOURCES = tests/lib/test_timer_correctness.c tests/helpers/c/prng.c
tests_lib_test_timer_performance_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_timer_performance_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_timer_performance_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_timer_performance_SOURCES = tests/lib/test_timer_performance.c tests/helpers/c/prng.c
tests_lib_test_ttable_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_ttable_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_ttable_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_ttable_SOURCES = tests/lib/test_ttable.c
tests_lib_test_zlog_CFLAGS = $(TESTS_CFLAGS)
tests_lib_test_zlog_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_zlog_LDADD = $(ALL_TESTS_LDADD)
tests_lib_test_zlog_SOURCES = tests/lib/test_zlog.c
tests_lib_test_zmq_CFLAGS = $(TESTS_CFLAGS) $(ZEROMQ_CFLAGS)
tests_lib_test_zmq_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_lib_test_zmq_LDADD = lib/libfrrzmq.la $(ALL_TESTS_LDADD) $(ZEROMQ_LIBS)
tests_lib_test_zmq_SOURCES = tests/lib/test_zmq.c

tests_ospf6d_test_lsdb_CFLAGS = $(TESTS_CFLAGS)
tests_ospf6d_test_lsdb_CPPFLAGS = $(TESTS_CPPFLAGS)
tests_ospf6d_test_lsdb_LDADD = $(OSPF6_TEST_LDADD)
tests_ospf6d_test_lsdb_SOURCES = tests/ospf6d/test_lsdb.c tests/lib/cli/common_cli.c

EXTRA_DIST += \
	tests/runtests.py \
	tests/bgpd/test_aspath.py \
	tests/bgpd/test_capability.py \
	tests/bgpd/test_ecommunity.py \
	tests/bgpd/test_mp_attr.py \
	tests/bgpd/test_mpath.py \
	tests/bgpd/test_peer_attr.py \
	tests/helpers/python/frrsix.py \
	tests/helpers/python/frrtest.py \
	tests/isisd/test_fuzz_isis_tlv.py \
	tests/isisd/test_fuzz_isis_tlv_tests.h.gz \
	tests/isisd/test_isis_lspdb.py \
	tests/isisd/test_isis_vertex_queue.py \
	tests/lib/cli/test_commands.in \
	tests/lib/cli/test_commands.py \
	tests/lib/cli/test_commands.refout \
	tests/lib/cli/test_cli.in \
	tests/lib/cli/test_cli.py \
	tests/lib/cli/test_cli.refout \
	tests/lib/northbound/test_oper_data.in \
	tests/lib/northbound/test_oper_data.py \
	tests/lib/northbound/test_oper_data.refout \
	tests/lib/test_nexthop_iter.py \
	tests/lib/test_ringbuf.py \
	tests/lib/test_srcdest_table.py \
	tests/lib/test_stream.py \
	tests/lib/test_stream.refout \
	tests/lib/test_table.py \
	tests/lib/test_timer_correctness.py \
	tests/lib/test_ttable.py \
	tests/lib/test_ttable.refout \
	tests/lib/test_zlog.py \
	tests/lib/test_graph.py \
	tests/lib/test_graph.refout \
	tests/ospf6d/test_lsdb.py \
	tests/ospf6d/test_lsdb.in \
	tests/ospf6d/test_lsdb.refout \
	# end

.PHONY: tests/tests.xml
tests/tests.xml: $(check_PROGRAMS)
	( cd tests; $(PYTHON) ../$(srcdir)/tests/runtests.py --junitxml=tests.xml -v ../$(srcdir)/tests; )
check: tests/tests.xml

clean-local: clean-tests
.PHONY: clean-tests
clean-tests:
	-rm -f tests/tests.xml