| 1 | @echo off
 | 
|---|
| 2 | rem Run Tests.  Run the regression test suite.
 | 
|---|
| 3 | rem Usage:  rt [-d] [-O] [-q] regrtest_args
 | 
|---|
| 4 | rem -d   Run Debug build (python_d.exe).  Else release build.
 | 
|---|
| 5 | rem -O   Run python.exe or python_d.exe (see -d) with -O.
 | 
|---|
| 6 | rem -q   "quick" -- normally the tests are run twice, the first time
 | 
|---|
| 7 | rem      after deleting all the .py[co] files reachable from Lib/.
 | 
|---|
| 8 | rem      -q runs the tests just once, and without deleting .py[co] files.
 | 
|---|
| 9 | rem All leading instances of these switches are shifted off, and
 | 
|---|
| 10 | rem whatever remains is passed to regrtest.py.  For example,
 | 
|---|
| 11 | rem     rt -O -d -x test_thread
 | 
|---|
| 12 | rem runs
 | 
|---|
| 13 | rem     python_d -O ../lib/test/regrtest.py -x test_thread
 | 
|---|
| 14 | rem twice, and
 | 
|---|
| 15 | rem     rt -q -g test_binascii
 | 
|---|
| 16 | rem runs
 | 
|---|
| 17 | rem     python_d ../lib/test/regrtest.py -g test_binascii
 | 
|---|
| 18 | rem to generate the expected-output file for binascii quickly.
 | 
|---|
| 19 | rem
 | 
|---|
| 20 | rem Confusing:  if you want to pass a comma-separated list, like
 | 
|---|
| 21 | rem     -u network,largefile
 | 
|---|
| 22 | rem then you have to quote it on the rt line, like
 | 
|---|
| 23 | rem     rt -u "network,largefile"
 | 
|---|
| 24 | 
 | 
|---|
| 25 | setlocal
 | 
|---|
| 26 | 
 | 
|---|
| 27 | set exe=python
 | 
|---|
| 28 | set qmode=
 | 
|---|
| 29 | set dashO=
 | 
|---|
| 30 | PATH %PATH%;..\..\tcltk\bin
 | 
|---|
| 31 | 
 | 
|---|
| 32 | :CheckOpts
 | 
|---|
| 33 | if "%1"=="-O" (set dashO=-O)     & shift & goto CheckOpts
 | 
|---|
| 34 | if "%1"=="-q" (set qmode=yes)    & shift & goto CheckOpts
 | 
|---|
| 35 | if "%1"=="-d" (set exe=python_d) & shift & goto CheckOpts
 | 
|---|
| 36 | 
 | 
|---|
| 37 | set cmd=%exe% %dashO% -E -tt ../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
 | 
|---|
| 38 | if defined qmode goto Qmode
 | 
|---|
| 39 | 
 | 
|---|
| 40 | echo Deleting .pyc/.pyo files ...
 | 
|---|
| 41 | %exe% rmpyc.py
 | 
|---|
| 42 | 
 | 
|---|
| 43 | echo on
 | 
|---|
| 44 | %cmd%
 | 
|---|
| 45 | @echo off
 | 
|---|
| 46 | 
 | 
|---|
| 47 | echo About to run again without deleting .pyc/.pyo first:
 | 
|---|
| 48 | pause
 | 
|---|
| 49 | 
 | 
|---|
| 50 | :Qmode
 | 
|---|
| 51 | echo on
 | 
|---|
| 52 | %cmd%
 | 
|---|