4 # Copyright 2014, Juniper Networks, Inc.
6 # This SOFTWARE is licensed under the LICENSE provided in the
7 # ../Copyright file. By downloading, installing, copying, or otherwise
8 # using the SOFTWARE, you agree to be bound by the terms of that
11 AM_CFLAGS = -I${top_srcdir} -I${top_srcdir}/libxo
13 # Ick: maintained by hand!
28 test_01_test_SOURCES = test_01.c
29 test_02_test_SOURCES = test_02.c
30 test_03_test_SOURCES = test_03.c
31 test_04_test_SOURCES = test_04.c
32 test_05_test_SOURCES = test_05.c
33 test_06_test_SOURCES = test_06.c
34 test_07_test_SOURCES = test_07.c
35 test_08_test_SOURCES = test_08.c
36 test_09_test_SOURCES = test_09.c
37 test_10_test_SOURCES = test_10.c
38 test_11_test_SOURCES = test_11.c
39 test_12_test_SOURCES = test_12.c
41 # TEST_CASES := $(shell cd ${srcdir} ; echo *.c )
43 noinst_PROGRAMS = ${TEST_CASES:.c=.test}
46 ${top_builddir}/libxo/libxo.la
48 if HAVE_HUMANIZE_NUMBER
54 ${addprefix saved/, ${TEST_CASES:.c=.T.err}} \
55 ${addprefix saved/, ${TEST_CASES:.c=.T.out}} \
56 ${addprefix saved/, ${TEST_CASES:.c=.XP.err}} \
57 ${addprefix saved/, ${TEST_CASES:.c=.XP.out}} \
58 ${addprefix saved/, ${TEST_CASES:.c=.JP.err}} \
59 ${addprefix saved/, ${TEST_CASES:.c=.JP.out}} \
60 ${addprefix saved/, ${TEST_CASES:.c=.HP.err}} \
61 ${addprefix saved/, ${TEST_CASES:.c=.HP.out}} \
62 ${addprefix saved/, ${TEST_CASES:.c=.X.err}} \
63 ${addprefix saved/, ${TEST_CASES:.c=.X.out}} \
64 ${addprefix saved/, ${TEST_CASES:.c=.J.err}} \
65 ${addprefix saved/, ${TEST_CASES:.c=.J.out}} \
66 ${addprefix saved/, ${TEST_CASES:.c=.H.err}} \
67 ${addprefix saved/, ${TEST_CASES:.c=.H.out}} \
68 ${addprefix saved/, ${TEST_CASES:.c=.HIPx.err}} \
69 ${addprefix saved/, ${TEST_CASES:.c=.HIPx.out}} \
70 ${addprefix saved/, ${TEST_CASES:.c=.E.err}} \
71 ${addprefix saved/, ${TEST_CASES:.c=.E.out}}
73 S2O = | ${SED} '1,/@@/d'
78 @echo '## Running the regression tests under Valgrind'
79 ${MAKE} CHECKER='valgrind -q' tests
81 #TEST_TRACE = set -x ;
84 ${CHECKER} ./$$base.test --libxo$$xoopts ${TEST_OPTS} \
85 > out/$$base.$$fmt.out 2> out/$$base.$$fmt.err ; \
86 ${DIFF} -Nu ${srcdir}/saved/$$base.$$fmt.out out/$$base.$$fmt.out ${S2O} ; \
87 ${DIFF} -Nu ${srcdir}/saved/$$base.$$fmt.err out/$$base.$$fmt.err ${S2O}
90 echo "... $$test ... $$fmt ..."; \
91 xoopts==warn,encoder=csv$$csv ; \
94 TEST_FORMATS = T XP JP HP X J H HIPx
96 test tests: ${bin_PROGRAMS}
98 -@ ${TEST_TRACE} (for test in ${TEST_CASES} ; do \
99 base=`${BASENAME} $$test .c` ; \
100 (for fmt in ${TEST_FORMATS}; do \
101 echo "... $$test ... $$fmt ..."; \
107 echo "... $$test ... $$fmt ..."; \
108 xoopts==warn,encoder=test ; \
113 -@ (${TEST_TRACE} test=test_01.c; base=test_01; \
114 ( fmt=Ecsv1; csv= ; ${TEST_JIG2} ); \
115 ( fmt=Ecsv2; csv=:path=top/data/item+no-header ; ${TEST_JIG2} ); \
116 ( fmt=Ecsv3; csv=:path=item+leafs=sku.sold+no-quotes ; ${TEST_JIG2} ); \
121 -@(test=${TEST_CASE}; data=${TEST_DATA}; ${TEST_ONE} ; true)
124 -@(for test in ${TEST_CASES} ; do \
125 base=`${BASENAME} $$test .c` ; \
126 (for fmt in ${TEST_FORMATS} E ; do \
127 echo "... $$test ... $$fmt ..."; \
128 ${CP} out/$$base.$$fmt.out ${srcdir}/saved/$$base.$$fmt.out ; \
129 ${CP} out/$$base.$$fmt.err ${srcdir}/saved/$$base.$$fmt.err ; \
132 -@(test=test_01.c; base=test_01; for fmt in Ecsv1 Ecsv2 Ecsv3 ; do \
133 echo "... $$test ... $$fmt ..."; \
134 ${CP} out/$$base.$$fmt.out ${srcdir}/saved/$$base.$$fmt.out ; \
135 ${CP} out/$$base.$$fmt.err ${srcdir}/saved/$$base.$$fmt.err ; \
139 $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -o $@ $<
141 CLEANFILES = ${TEST_CASES:.c=.test}