/[escript]/trunk/pycad/test/python/SConscript
ViewVC logotype

Annotation of /trunk/pycad/test/python/SConscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2235 - (hide annotations)
Tue Feb 3 01:47:47 2009 UTC (10 years, 3 months ago) by jfenwick
File size: 2180 byte(s)
Added support for generating non-scons test scripts
1 ksteube 1811
2     ########################################################
3 ksteube 1705 #
4 ksteube 1811 # Copyright (c) 2003-2008 by University of Queensland
5     # Earth Systems Science Computational Center (ESSCC)
6     # http://www.uq.edu.au/esscc
7 ksteube 1705 #
8 ksteube 1811 # Primary Business: Queensland, Australia
9     # Licensed under the Open Software License version 3.0
10     # http://www.opensource.org/licenses/osl-3.0.php
11 ksteube 1705 #
12 ksteube 1811 ########################################################
13 ksteube 1705
14 ksteube 1811
15 ksteube 1705 import os
16 gross 898 Import('*')
17 ksteube 1705
18     local_env = clone_env(env)
19    
20 gross 898 src_dir = local_env.Dir('.').srcnode().abspath
21     filenames = os.listdir(src_dir)
22     #
23     # files defining tests but are not running by itself:
24     #
25     testfiles = [x for x in filenames if x.startswith('test_') and os.path.splitext(x)[1] in ['.py'] ]
26     #
27     # directories defining test data
28     #
29     testdata_dir = [x for x in filenames if x.startswith('data_') ]
30     #
31     # files defining test runs (passing in a release)
32     #
33 ksteube 1705 testruns = []
34     testruns += ['run_pycad_test.py']
35 gross 898 #
36     # files defining tests run locally (not as part of a release)
37     #
38     localtestruns = [x for x in filenames if not x.startswith('run_') and os.path.splitext(x)[1] in ['.py']]
39     #
40     # all test
41     #
42     alltestruns = testruns + localtestruns
43     #
44     # test files are just compiled:
45     #
46     test_pyc = env.PyCompile(testfiles)
47     env.Alias('build_py_tests', test_pyc)
48    
49     #Add Unit Test to target alias
50     local_env.PrependENVPath('PYTHONPATH',str(env.Dir('#/build/$PLATFORM/pycad/test/python')))
51     local_env['ENV']['ESCRIPT_TEST_DATA_ROOT']=env.Dir('#/pycad/test/python').srcnode().abspath
52     local_env['ENV']['ESCRIPT_WORKDIR']=env.Dir('#/build/$PLATFORM/pycad/test/python').srcnode().abspath
53     env.Alias('local_py_tests',[os.path.splitext(x)[0]+'.passed' for x in alltestruns])
54     env.Alias('py_tests', [os.path.splitext(x)[0]+'.passed' for x in testruns ])
55    
56     #
57     # run all tests:
58     #
59     program = local_env.RunPyUnitTest(alltestruns)
60    
61 jfenwick 2235 # Add a group of tests
62     from grouptest import *
63     tgroup=GroupTest("$PYTHONRUNNER ",(("ESCRIPT_TEST_DATA_ROOT","$BATCH_ROOT/pycad/test/python"),("ESCRIPT_WORKDIR","$BUILD_DIR/pycad/test/python")),"$BUILD_DIR/pycad/test/python","$BATCH_ROOT/pycad/test/python",testruns)
64     TestGroups.append(tgroup)
65    
66 ksteube 1705 Depends(program, local_env['pyinstall'])
67 gross 898 Depends(program, dep_lib)
68     Depends(program, 'build_py_tests')

  ViewVC Help
Powered by ViewVC 1.1.26