8
8
This module calls down into individual test cases via subprocess. It will
9
9
forward all unrecognized arguments onto the individual test scripts.
10
10
11
+ RPC tests are disabled on Windows by default. Use --force to run them anyway.
12
+
11
13
For a description of arguments recognized by test scripts, see
12
14
`qa/pull-tester/test_framework/test_framework.py:BitcoinTestFramework.main`.
13
15
24
26
import re
25
27
26
28
BASE_SCRIPTS = [
27
- # Scripts that are run by the travis build process
28
- # longest test should go first, to favor running tests in parallel
29
+ # Scripts that are run by the travis build process.
30
+ # Longest test should go first, to favor running tests in parallel
29
31
'wallet-hd.py' ,
30
32
'walletbackup.py' ,
31
33
# vv Tests less than 5m vv
@@ -130,11 +132,11 @@ def main():
130
132
formatter_class = argparse .RawTextHelpFormatter )
131
133
parser .add_argument ('--coverage' , action = 'store_true' , help = 'generate a basic coverage report for the RPC interface' )
132
134
parser .add_argument ('--extended' , action = 'store_true' , help = 'run the extended test suite in addition to the basic tests' )
135
+ parser .add_argument ('--force' , '-f' , action = 'store_true' , help = 'run tests even on platforms where they are disabled by default (e.g. windows).' )
133
136
parser .add_argument ('--help' , '-h' , '-?' , action = 'store_true' , help = 'print help text and exit' )
134
- parser .add_argument ('--nozmq' , action = 'store_true' , help = 'do not run the zmq tests' )
135
137
parser .add_argument ('--jobs' , '-j' , type = int , default = 4 , help = 'how many test scripts to run in parallel. Default=4.' )
136
- parser .add_argument ('--win ' , action = 'store_true' , help = 'signal that this is running in a Windows environment and that we should run the tests' )
137
- ( args , unknown_args ) = parser .parse_known_args ()
138
+ parser .add_argument ('--nozmq ' , action = 'store_true' , help = 'do not run the zmq tests' )
139
+ args , unknown_args = parser .parse_known_args ()
138
140
139
141
# Create a set to store arguments and create the passon string
140
142
tests = set (arg for arg in unknown_args if arg [:2 ] != "--" )
@@ -144,15 +146,15 @@ def main():
144
146
config = configparser .ConfigParser ()
145
147
config .read_file (open (os .path .dirname (__file__ ) + "/tests_config.ini" ))
146
148
147
- enable_wallet = config ["components" ][ "ENABLE_WALLET" ] == "True"
148
- enable_utils = config ["components" ][ "ENABLE_UTILS" ] == "True"
149
- enable_bitcoind = config ["components" ][ "ENABLE_BITCOIND" ] == "True"
150
- enable_zmq = config ["components" ][ "ENABLE_ZMQ" ] == "True" and not args .nozmq
149
+ enable_wallet = config ["components" ]. getboolean ( "ENABLE_WALLET" )
150
+ enable_utils = config ["components" ]. getboolean ( "ENABLE_UTILS" )
151
+ enable_bitcoind = config ["components" ]. getboolean ( "ENABLE_BITCOIND" )
152
+ enable_zmq = config ["components" ]. getboolean ( "ENABLE_ZMQ" ) and not args .nozmq
151
153
152
- if config ["environment" ]["EXEEXT" ] == ".exe" and not args .win :
154
+ if config ["environment" ]["EXEEXT" ] == ".exe" and not args .force :
153
155
# https://github.com/bitcoin/bitcoin/commit/d52802551752140cf41f0d9a225a43e84404d3e9
154
156
# https://github.com/bitcoin/bitcoin/pull/5677#issuecomment-136646964
155
- print ("Win tests currently disabled by default. Use --win option to enable" )
157
+ print ("Tests currently disabled on Windows by default. Use --force option to enable" )
156
158
sys .exit (0 )
157
159
158
160
if not (enable_wallet and enable_utils and enable_bitcoind ):
@@ -170,12 +172,12 @@ def main():
170
172
raise
171
173
172
174
# Build list of tests
173
- if len ( tests ) != 0 :
175
+ if tests :
174
176
# Individual tests have been specified. Run specified tests that exist
175
177
# in the ALL_SCRIPTS list. Accept the name with or without .py extension.
176
178
test_list = [t for t in ALL_SCRIPTS if
177
179
(t in tests or re .sub (".py$" , "" , t ) in tests )]
178
- if len ( test_list ) == 0 :
180
+ if not test_list :
179
181
print ("No valid test scripts specified. Check that your test is in one "
180
182
"of the test lists in rpc-tests.py or run rpc-tests.py with no arguments to run all tests" )
181
183
print ("Scripts not found:" )
@@ -200,9 +202,9 @@ def main():
200
202
subprocess .check_call ((config ["environment" ]["SRCDIR" ] + '/qa/rpc-tests/' + test_list [0 ]).split () + ['-h' ])
201
203
sys .exit (0 )
202
204
203
- runtests (test_list , config ["environment" ]["SRCDIR" ], config ["environment" ]["BUILDDIR" ], config ["environment" ]["EXEEXT" ], args .jobs , args .coverage , passon_args )
205
+ run_tests (test_list , config ["environment" ]["SRCDIR" ], config ["environment" ]["BUILDDIR" ], config ["environment" ]["EXEEXT" ], args .jobs , args .coverage , passon_args )
204
206
205
- def runtests (test_list , src_dir , build_dir , exeext , jobs = 1 , enable_coverage = False , args = []):
207
+ def run_tests (test_list , src_dir , build_dir , exeext , jobs = 1 , enable_coverage = False , args = []):
206
208
BOLD = ("" ,"" )
207
209
if os .name == 'posix' :
208
210
# primitive formatting on supported
0 commit comments