/[escript]/trunk/doc/examples/SConscript
ViewVC logotype

Contents of /trunk/doc/examples/SConscript

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3259 - (show annotations)
Mon Oct 11 01:48:14 2010 UTC (9 years ago) by jfenwick
File size: 2530 byte(s)
Merging dudley and scons updates from branches

1
2 ########################################################
3 #
4 # Copyright (c) 2003-2010 by University of Queensland
5 # Earth Systems Science Computational Center (ESSCC)
6 # http://www.uq.edu.au/esscc
7 #
8 # 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 #
12 ########################################################
13
14 from grouptest import *
15 import os
16 Import('*')
17 local_env = env.Clone()
18
19 example_files = example_files_allow_mpi + example_files_no_mpi
20
21 src_dir = local_env.Dir('.').srcnode().abspath
22 test_dir= Dir('test', local_env.Dir('.'))
23 cc=Command(test_dir, [], Mkdir("$TARGET"))
24 # Execute(Delete(test_dir.srcnode().abspath))
25 # Execute(Mkdir(test_dir.srcnode().abspath))
26 #
27 # create copy of all non-py files:
28 #
29 data_files=[]
30 for i in example_files:
31 if not i.endswith('.py'):
32 f_in=File(os.path.join(src_dir,i))
33 f_out=File(i,test_dir)
34 data_files.append(Command(f_out, f_in, Copy("$TARGET", "$SOURCE")))
35
36 # We need this because of cblib.py which needs to be present for other tests
37 # to work
38 for i in example_deps:
39 f_in=File(os.path.join(src_dir,i))
40 f_out=File(i,test_dir)
41 data_files.append(Command(f_out, f_in, Copy("$TARGET", "$SOURCE")))
42 Depends(cc, data_files)
43
44 np=int(local_env['ENV']['ESCRIPT_NUM_NODES'])
45 programs=[]
46 copies=[]
47 for i in example_files:
48 if i.endswith('.py') and (np==1 or not i in example_files_no_mpi):
49 f_in=File(os.path.join(src_dir,i))
50 f_out=File(i, test_dir)
51 c=Command(f_out, f_in, Copy("$TARGET", "$SOURCE"))
52 copies+=c
53 programs+=local_env.RunPyUnitTest(c)
54
55 #env.Alias('build_py_tests', programs)
56 env.Alias('build_py_tests', data_files)
57 env.Alias('build_py_tests', copies)
58 env.Alias('py_tests', programs)
59 Depends(programs, data_files)
60 Depends(cc, data_files)
61
62 # Add a group of tests
63 # find all directories:
64 for single_processor_only in [True, False]:
65 dirs=[]
66 for i in example_files:
67 if i.endswith('.py'):
68 if single_processor_only == (i in example_files_no_mpi):
69 d=os.path.split(i)[0]
70 if not d in dirs: dirs.append(d)
71 for d in dirs:
72 runs=[]
73 for i in example_files:
74 if i.startswith(d) and i.endswith('.py') and (single_processor_only == (i in example_files_no_mpi)): runs.append(os.path.split(i)[1])
75 TestGroups.append(GroupTest("$PYTHONRUNNER ",(),"",os.path.join("$BUILD_DIR/doc/examples/test",d),runs, single_processor_only=single_processor_only))
76

  ViewVC Help
Powered by ViewVC 1.1.26