xref: /lighttpd1.4/tests/SConscript (revision fc01b820)
1e95ea21bSJan KneschkeImport('env')
2e95ea21bSJan Kneschke
3e95ea21bSJan Kneschketests = Split('prepare.sh \
4e95ea21bSJan Kneschke	run-tests.pl \
5e95ea21bSJan Kneschke	cleanup.sh')
6e95ea21bSJan Kneschke
7e95ea21bSJan Kneschkeextra_dist = Split('fastcgi-10.conf \
8e95ea21bSJan Kneschke	fastcgi-responder.conf \
9e95ea21bSJan Kneschke	core-var-include.t \
10e95ea21bSJan Kneschke	var-include.conf \
11e95ea21bSJan Kneschke	var-include-sub.conf \
12e95ea21bSJan Kneschke	condition.conf \
13e95ea21bSJan Kneschke	core-condition.t \
14e95ea21bSJan Kneschke	core-request.t \
15e95ea21bSJan Kneschke	core-response.t \
16e95ea21bSJan Kneschke	core-keepalive.t \
1707517ff3SGlenn Strauss	mod-auth.conf \
18e95ea21bSJan Kneschke	mod-auth.t \
19e95ea21bSJan Kneschke	mod-cgi.t \
20de9e2f98SGlenn Strauss	mod-deflate.t \
21de9e2f98SGlenn Strauss	mod-deflate.conf \
22e95ea21bSJan Kneschke	mod-fastcgi.t \
23e95ea21bSJan Kneschke	request.t \
24e95ea21bSJan Kneschke	mod-ssi.t \
25e95ea21bSJan Kneschke	LightyTest.pm \
26e95ea21bSJan Kneschke	mod-setenv.t')
27e95ea21bSJan Kneschke
28*fc01b820SGlenn Straussfcgi_responder = env.Program("fcgi-responder", "fcgi-responder.c")
294a68780eSGlenn Straussscgi_responder = env.Program("scgi-responder", "scgi-responder.c")
30e95ea21bSJan Kneschke
3168284bd7SStefan Bühlerdef CopyTestBinary(env, binary):
3268284bd7SStefan Bühler	return env.Command(target = env['ENV']['top_builddir'] + '/tests/' + binary, source = binary, action = Copy("$TARGET", "$SOURCE"))
3368284bd7SStefan Bühler
3468284bd7SStefan Bühlerdef BuildTestEnv(env, build_type):
3568284bd7SStefan Bühler	builddir = build_type
3668284bd7SStefan Bühler	dependencies = [build_type]
3768284bd7SStefan Bühler	if build_type == 'dynamic':
3868284bd7SStefan Bühler		builddir = '.'
3968284bd7SStefan Bühler		dependencies += ['modules']
4068284bd7SStefan Bühler
4168284bd7SStefan Bühler	testenv = env.Clone()
4268284bd7SStefan Bühler	testenv['ENV']['srcdir']='tests'
4368284bd7SStefan Bühler	testenv['ENV']['top_builddir']='sconsbuild/' + builddir
4468284bd7SStefan Bühler	prepare = testenv.AlwaysBuild(testenv.Command(build_type + '/prepare', 'prepare.sh', 'tests/prepare.sh'))
4568284bd7SStefan Bühler	runtests = testenv.AlwaysBuild(testenv.Command(build_type + '/run-tests', 'run-tests.pl', 'tests/run-tests.pl'))
4668284bd7SStefan Bühler	cleanup = testenv.AlwaysBuild(testenv.Command(build_type + '/cleanup', 'cleanup.sh', 'tests/cleanup.sh'))
4768284bd7SStefan Bühler	testenv.Depends(runtests, prepare)
4868284bd7SStefan Bühler	testenv.Depends(cleanup, runtests)
4968284bd7SStefan Bühler	SideEffect('dummy-file-prevent-running-tests-in-parallel', runtests)
5068284bd7SStefan Bühler
5168284bd7SStefan Bühler	testenv.Depends(runtests, dependencies)
5268284bd7SStefan Bühler
53*fc01b820SGlenn Strauss	fcgis = [CopyTestBinary(testenv, 'fcgi-responder'), CopyTestBinary(testenv, 'scgi-responder')]
5468284bd7SStefan Bühler	testenv.Depends(runtests, fcgis)
5568284bd7SStefan Bühler
5668284bd7SStefan Bühler	return [prepare, runtests, cleanup]
5768284bd7SStefan Bühler
5868284bd7SStefan Bühlercheck_dynamic = env.Alias('check_dynamic', BuildTestEnv(env, 'dynamic'))
5968284bd7SStefan Bühlerenv.Depends(check_dynamic, 'modules')
6068284bd7SStefan Bühlercheck_static = env.Alias('check_static', BuildTestEnv(env, 'static'))
6168284bd7SStefan Bühlercheck_fullstatic = env.Alias('check_fullstatic', BuildTestEnv(env, 'fullstatic'))
6268284bd7SStefan Bühler
6368284bd7SStefan Bühlerchecks = []
6468284bd7SStefan Bühler
6568284bd7SStefan Bühlerif env['build_dynamic']:
6668284bd7SStefan Bühler	checks += check_dynamic
6768284bd7SStefan Bühler
6868284bd7SStefan Bühlerif env['build_static']:
6968284bd7SStefan Bühler	checks += check_static
7068284bd7SStefan Bühler
7168284bd7SStefan Bühlerif env['build_fullstatic']:
7268284bd7SStefan Bühler	checks += check_fullstatic
7368284bd7SStefan Bühler
7468284bd7SStefan Bühlerenv.Alias('check', checks)
75