diff options
author | Neal Norwitz <nnorwitz@gmail.com> | 2006-06-27 04:09:13 (GMT) |
---|---|---|
committer | Neal Norwitz <nnorwitz@gmail.com> | 2006-06-27 04:09:13 (GMT) |
commit | 524b59bf7c8284a717db3573c23fda66fd6eccba (patch) | |
tree | 867b72bc77fa084aa3d3f879d5145ed625a925ec /Misc | |
parent | 25d4ca3f7892f5efa3960054d47717126e94415b (diff) | |
download | cpython-524b59bf7c8284a717db3573c23fda66fd6eccba.zip cpython-524b59bf7c8284a717db3573c23fda66fd6eccba.tar.gz cpython-524b59bf7c8284a717db3573c23fda66fd6eccba.tar.bz2 |
Instead of doing a make test, run the regression tests out of the installed
copy. This will hopefully catch problems where directories are added
under Lib/ but not to Makefile.pre.in. This breaks out the 2 runs
of the test suite with and without -O which is also nicer.
Diffstat (limited to 'Misc')
-rwxr-xr-x | Misc/build.sh | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/Misc/build.sh b/Misc/build.sh index c3c2e38..938ba94 100755 --- a/Misc/build.sh +++ b/Misc/build.sh @@ -54,6 +54,12 @@ RESULT_FILE="$DIR/build/index.html" INSTALL_DIR="/tmp/python-test/local" RSYNC_OPTS="-aC -e ssh" +# Always run the installed version of Python. +PYTHON=$INSTALL_DIR/bin/python + +# Python options and regression test program that should always be run. +REGRTEST_ARGS="-E -tt $INSTALL_DIR/lib/python2.5/test/regrtest.py" + REFLOG="build/reflog.txt.out" # These tests are not stable and falsely report leaks sometimes. # The entire leak report will be mailed if any test not in this list leaks. @@ -158,18 +164,24 @@ if [ $err = 0 -a "$BUILD_DISABLED" != "yes" ]; then ## make and run basic tests F=make-test.out start=`current_time` - make test >& build/$F + $PYTHON $REGRTEST_ARGS >& build/$F NUM_FAILURES=`grep -ic " failed:" build/$F` update_status "Testing basics ($NUM_FAILURES failures)" "$F" $start - ## FIXME: should mail since -uall below should find same problems mail_on_failure "basics" build/$F + F=make-test-opt.out + start=`current_time` + $PYTHON -O $REGRTEST_ARGS >& build/$F + NUM_FAILURES=`grep -ic " failed:" build/$F` + update_status "Testing opt ($NUM_FAILURES failures)" "$F" $start + mail_on_failure "opt" build/$F + ## run the tests looking for leaks F=make-test-refleak.out start=`current_time` ## ensure that the reflog exists so the grep doesn't fail touch $REFLOG - ./python ./Lib/test/regrtest.py -R 4:3:$REFLOG -u network $LEAKY_SKIPS >& build/$F + $PYTHON $REGRTEST_ARGS -R 4:3:$REFLOG -u network $LEAKY_SKIPS >& build/$F NUM_FAILURES=`egrep -vc "$LEAKY_TESTS" $REFLOG` update_status "Testing refleaks ($NUM_FAILURES failures)" "$F" $start mail_on_failure "refleak" $REFLOG @@ -179,7 +191,7 @@ if [ $err = 0 -a "$BUILD_DISABLED" != "yes" ]; then start=`current_time` ## skip curses when running from cron since there's no terminal ## skip sound since it's not setup on the PSF box (/dev/dsp) - ./python -E -tt ./Lib/test/regrtest.py -uall -x test_curses test_linuxaudiodev test_ossaudiodev >& build/$F + $PYTHON $REGRTEST_ARGS -uall -x test_curses test_linuxaudiodev test_ossaudiodev >& build/$F NUM_FAILURES=`grep -ic " failed:" build/$F` update_status "Testing all except curses and sound ($NUM_FAILURES failures)" "$F" $start mail_on_failure "all" build/$F @@ -189,7 +201,7 @@ fi ## make doc -cd Doc +cd $DIR/Doc F="make-doc.out" start=`current_time` make >& ../build/$F |