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