/[escript]/trunk/autotest-scons
ViewVC logotype

Diff of /trunk/autotest-scons

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 361 by jgs, Thu Dec 15 02:04:58 2005 UTC revision 757 by woo409, Mon Jun 26 13:12:56 2006 UTC
# Line 1  Line 1 
1  #!/bin/bash  #!/bin/bash
2    #          Copyright 2006 by ACcESS MNRF
3    #
4    #              http://www.access.edu.au
5    #       Primary Business: Queensland, Australia
6    #  Licensed under the Open Software License version 3.0
7    #     http://www.opensource.org/licenses/osl-3.0.php
8    #
9    #
10    #
11  # $Id: autotest-scons 162 2005-11-11 00:09:59Z svn $  # $Id: autotest-scons 162 2005-11-11 00:09:59Z svn $
12  # An explicit testing script for esys using the scons build system  # An explicit testing script for esys using the scons build system
13    
14  # list of users to email test results to  # list of users to email test results to
15  MAIL_RECIPIENTS="jgs@esscc.uq.edu.au gross@esscc.uq.edu.au cochrane@esscc.uq.edu.au elspeth@esscc.uq.edu.au matt@esscc.uq.edu.au"  # currently disabled during testing.
16  #MAIL_RECIPIENTS="jgs@esscc.uq.edu.au"  # MAIL_RECIPIENTS="gross@esscc.uq.edu.au elspeth@esscc.uq.edu.au matt@esscc.uq.edu.au robert.woodcock@csiro.au Peter.Hornby@csiro.au"
17    MAIL_RECIPIENTS="elspeth@esscc.uq.edu.au"
 # modules to test  
 TESTS="escript bruce finley"  
18    
19  # the python tests to run  # the python tests to run
20  FINLEY_PYTESTS="ImportTest.py finleyTest.py SimpleSolve.py GradTest.py RecTest.py test_linearPDEsOnFinley.py test_generators.py test_visualization_interface.py test_utilOnFinley.py test_symbolsOnFinley.py"  BRUCE_PYTESTS="ImportTest.passed BruceTest.passed test_utilOnBruce.py"
21  ESCRIPT_PYTESTS="ImportTest.py BinaryOps.py UnaryOps.py SliceGetting.py SliceSetting.py MiscTests.py ArchiveTests.py escriptTest.py newEscriptTests.py DataVariableTests.py test_xml.py"  ESCRIPT_PYTESTS="ImportTest.passed BinaryOps.passed UnaryOps.passed SliceGetting.passed SliceSetting.passed MiscTests.passed ArchiveTests.passed newEscriptTests.passed test_xml.passed insituTests.passed s2.passed"
22  BRUCE_PYTESTS="ImportTest.py BruceTest.py test_utilOnBruce.py test_symbolsOnBruce.py"  FINLEY_PYTESTS="ImportTest.passed finleyTest.passed SimpleSolve.passed RecTest.passed test_linearPDEsOnFinley.passed test_generators.passed test_visualization_interface.passed test_utilOnFinley.passed"
23    
24  echo cd $1  # Changed slightly to cope with new script, so it doesn't stomp all over previous iterations
25    
26    echo "===> cd $1"
27  cd $1  cd $1
28  if [ $? != 0 ]  if [ $? != 0 ]
29  then  then
30    echo couldnt cd $1    echo "couldnt cd $1"
31    echo "couldnt cd $1" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS    echo "couldnt cd $1" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS
32    exit 1    exit 1
33  fi  fi
34    
35    # this is for the automated script
36    echo "===> change up a directory"
37    cd ..
38    echo "===> make a sandbox and work in that"
39    mkdir sandbox
40    cd sandbox
41    
42  PWD=`pwd`  PWD=`pwd`
43  echo working in: $PWD  echo "===> working in: $PWD"
44    
45  # define compiler executable and library locations  # Setup the environment
46  export PATH=/opt/intel/cmplrs/80.058/intel_cc_80/bin:$PATH  echo "loading modules"
47  export LD_LIBRARY_PATH=/opt/intel/cmplrs/80.058/intel_cc_80/lib  . ${MODULESHOME}/init/sh
48    module load intel_cc.9.0.026
49  # define python location  export MODULEPATH=${MODULEPATH}:/data/raid2/toolspp4/modulefiles/gcc-3.3.6
50  export PATH=/raid2/tools/python-2.3.4/bin:$PATH  module load python/2.4.1
51    module load boost/1.33.0/python-2.4.1
52  # set library and openmp settings  module load numarray/1.3.3
 export LD_LIBRARY_PATH=$PWD/lib:/raid2/tools/boost/lib:$LD_LIBRARY_PATH  
 export PYTHONPATH=$PWD  
 export OMP_SCHEDULE="dynamic"  
 export OMP_NUM_THREADS=4  
 export OMP_DYNAMIC=TRUE  
 export OMP_NESTED=FALSE  
53    
54  FAIL=0  # set openmp settings
55    export OMP_NUM_THREADS=4
56    
57  echo svn update  # doesn't appear to work - don't know why.
58  svn update  #echo "===> svn update"
59    #svn update
60    #if [ $? != 0 ]
61    #then
62    #  echo "svn update failed"
63    #  echo "svn update failed" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS
64    #  exit 2
65    #fi
66    
67    # Need to test this bit yet.
68    echo "==> removing previous checkout"
69    rm -rf trunk/
70    ls
71    # This works - temporarily removed to speed up testing.
72    echo "==> svn checkout"
73    svn checkout svn+ssh://ess/esys13/trunk
74  if [ $? != 0 ]  if [ $? != 0 ]
75  then  then
76    echo svn update failed      echo "svn checkout failed"
77    echo "svn update failed" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS      echo "svn checkout failed" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS
78    exit 2      exit 2
79  fi  fi
80    
81  echo building scons debug=1  echo "==> change to trunk"
82  scons debug=1  ls trunk
83    cd trunk
84    
85    # This bit works. Commented out to speed up testing.
86    echo "===> scons building esys"
87    scons
88  if [ $? != 0 ]  if [ $? != 0 ]
89  then  then
90    echo scons build failed    echo "scons build failed"
91    echo "scons build failed - see autotest-scons logfile" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS    echo "scons build failed" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS
92    exit 3    exit 3
93  fi  fi
94    
95  echo building unit_tests  # This bit works. Commented out to speed up testing.
96  scons debug=1 build_tests  echo "===> building unit_tests"
97    scons build_all_tests
98  if [ $? != 0 ]  if [ $? != 0 ]
99  then  then
100    echo  unit_test build failed    echo "build_tests failed"
101    echo "unit_test build failed - see autotest-scons logfile" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS    echo "build_tests failed" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS
102    exit 3    exit 3
103  fi  fi
104    
105  echo running unit_tests  FAIL=0
 scons debug=1 run_tests  
 if [ $? != 0 ]  
 then  
   echo unit_testing failed  
   echo "unit_test failed - see autotest-scons logfile" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS  
   FAIL=1  
 fi  
   
 for module in $TESTS  
 do  
     echo "running python tests for: $module"  
     cd $module/test/python  
     if [ "$module" == "finley" ]  
     then  
         for pytest in $FINLEY_PYTESTS  
         do  
             echo "Running python test: $pytest"  
             python $pytest  
             if [ $? != 0 ]  
             then  
               echo Python Testing FAILED for $pytest in module $module  
               echo "finley py_test: $pytest failed - see autotest-scons logfile" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS  
               FAIL=1  
             fi  
         done  
     elif [ "$module" == "escript" ]  
     then  
         for pytest in $ESCRIPT_PYTESTS  
         do  
             echo "Running python test: $pytest"  
             python $pytest  
             if [ $? != 0 ]  
             then  
               echo Python Testing FAILED for $pytest in module $module  
               echo "escript py_test: $pytest failed - see autotest-scons logfile" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS  
               FAIL=1  
             fi  
         done  
     elif [ "$module" == "bruce" ]  
     then  
         for pytest in $BRUCE_PYTESTS  
         do  
             echo "Running python test: $pytest"  
             python $pytest  
             if [ $? != 0 ]  
             then  
               echo Python Testing FAILED for $pytest in module $module  
               echo "bruce py_test: $pytest failed - see autotest-scons logfile" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS  
               FAIL=1  
             fi  
         done  
     fi  
     cd ../../..  
 done  
106    
107  if [ $FAIL == 0 ]  #echo "===> running all tests"
108    #scons all_tests
109    if [ $? != 0 ]
110  then  then
111      echo success    echo "all_tests failed"
112      echo "success" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS    echo "all_tests failed" | mail -s "esys autotest-scons results" $MAIL_RECIPIENTS
113      exit 4
114  fi  fi
 exit 0  

Legend:
Removed from v.361  
changed lines
  Added in v.757

  ViewVC Help
Powered by ViewVC 1.1.26