1@rem Run Tests.  Run the regression test suite.
2@rem Usage:  rt [-d] [-O] [-q] regrtest_args
3@rem -d   Run Debug build (python_d.exe).  Else release build.
4@rem -O   Run python.exe or python_d.exe (see -d) with -O.
5@rem -q   "quick" -- normally the tests are run twice, the first time
6@rem      after deleting all the .py[co] files reachable from Lib/.
7@rem      -q runs the tests just once, and without deleting .py[co] files.
8@rem All leading instances of these switches are shifted off, and
9@rem whatever remains is passed to regrtest.py.  For example,
10@rem     rt -O -d -x test_thread
11@rem runs
12@rem     python_d -O ../../lib/test/regrtest.py -x test_thread
13@rem twice, and
14@rem     rt -q -g test_binascii
15@rem runs
16@rem     python_d ../../lib/test/regrtest.py -g test_binascii
17@rem to generate the expected-output file for binascii quickly.
18@set _exe=python
19@set _qmode=no
20@set _dashO=
21@goto CheckOpts
22:Again
23@shift
24:CheckOpts
25@if "%1"=="-O" set _dashO=-O
26@if "%1"=="-O" goto Again
27@if "%1"=="-q" set _qmode=yes
28@if "%1"=="-q" goto Again
29@if "%1"=="-d" set _exe=python_d
30@if "%1"=="-d" goto Again
31@if "%_qmode%"=="yes" goto Qmode
32@echo Deleting .pyc/.pyo files ...
33@%_exe% rmpyc.py
34%_exe% %_dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
35@echo About to run again without deleting .pyc/.pyo first:
36@pause
37:Qmode
38%_exe% %_dashO% -E -tt ../../lib/test/regrtest.py %1 %2 %3 %4 %5 %6 %7 %8 %9
39@set _exe=
40@set _qmode=
41@set _dashO=
42