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
|
# vim:ft=automake
# Copyright (C) 2000-2006 MySQL AB
# Copyright (c) 2010 Monty Taylor
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Library General Public
# License as published by the Free Software Foundation; version 2
# of the License.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public
# License along with this library; if not, write to the Free
# Software Foundation, Inc., 51 Franklin Place - Suite 330, Boston,
# MA 02110-1301, USA
benchdir_root= $(prefix)
testdir = $(benchdir_root)/mysql-test
EXTRA_SCRIPTS = tests/valgrind.supp $(PRESCRIPTS)
GENSCRIPTS = tests/dtr tests/mtr tests/test-run
PRESCRIPTS = tests/test-run.pl tests/stress-test.pl
PLUGIN_TESTS = $(pandora_plugin_test_list)
NORMAL_TESTS = main,jp,tamil,regression,$(PLUGIN_TESTS)
ALL_TESTS = main,big,jp,tamil,regression,$(PLUGIN_TESTS)
noinst_SCRIPTS = $(GENSCRIPTS) $(PRESCRIPTS)
CLEANFILES += $(GENSCRIPTS) tests/mtr
TEST_RUN= $(PERL) -I../$(top_srcdir)/tests/lib \
../${top_srcdir}/tests/test-run.pl \
--top-srcdir=../${top_srcdir} \
--top-builddir=../${top_builddir} \
--vardir=../${top_builddir}/tests/var \
--suitepath=../${top_srcdir}/plugin \
--testdir=../${top_srcdir}/tests \
--dtr-build-thread=$$$$
EXTRA_DIST += \
$(EXTRA_SCRIPTS) \
${srcdir}/tests/README.stress \
${srcdir}/tests/suite \
${srcdir}/tests/t \
${srcdir}/tests/include/*.inc \
${srcdir}/tests/include/*.sql \
${srcdir}/tests/include/*.test \
${srcdir}/tests/r/*.result \
${srcdir}/tests/r/*.require \
${srcdir}/tests/r/pbxt/*result \
${srcdir}/tests/std_data \
${srcdir}/tests/lib/*.pl \
${srcdir}/tests/lib/My/*.pm \
tests/strip-valgrind
check-local: test-drizzle
# dtr - a shortcut for executing test-run.pl
tests/dtr:
$(RM) -f tests/dtr
$(LN_S) test-run.pl tests/dtr
tests/var:
$(mkdir_p) tests/var
tests/mtr:
$(RM) -f tests/mtr
$(LN_S) test-run.pl tests/mtr
# test-run - a shortcut for executing test-run.pl
tests/test-run: tests/var
$(RM) -f tests/test-run
$(LN_S) test-run.pl tests/test-run
.PHONY: test \
test-all \
test-big \
test-drizzle \
test-plugins
# Target 'test' will run the regression test suite using the built server.
#
# If you are running in a shared environment, users can avoid clashing
# port numbers by setting individual small numbers 1-100 to the
# environment variable MTR_BUILD_THREAD. The script "test-run"
# will then calculate the various port numbers it needs from this,
# making sure each user use different ports.
test: check
# Please keep the list of tests in alphabetical order for ease of
# maintenance and verification
test-all:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --fast --force --suite=$(ALL_TESTS))
test-drizzle:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --fast --force --suite=$(NORMAL_TESTS))
test-valgrind:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --valgrind --force --suite=$(NORMAL_TESTS) && python strip-valgrind)
test-valgrind-suppressions:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --valgrind --valgrind-option='--gen-suppressions=all' --valgrind-option='--show-reachable=yes' --force --suite=$(NORMAL_TESTS) && python strip-valgrind)
test-junitxml:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --fast --force --suite=$(NORMAL_TESTS) --subunit | subunit2junitxml --no-passthrough > junit-format.xml )
test-big:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --fast --force --suite=big )
test-big-junitxml:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --fast --force --suite=big --subunit | subunit2junitxml --no-passthrough > junit-format-big.xml )
test-jp:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --fast --force --suite=jp )
test-plugins:
( cd tests && $(TEST_RUN) $(TEST_RUN_EXTRA_OPTIONS) --fast --force --suite=$(PLUGIN_TESTS) )
distclean-local: nukevar
nukevar:
rm -rf tests/var
.PHONY: nukevar
|