aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2016-04-19 10:25:59 +0200
committerWladimir J. van der Laan <laanwj@gmail.com>2016-04-19 10:26:11 +0200
commitfa9d86f8c4f4aba2c284f1db2cc8d0a1e89a9ce6 (patch)
tree7e5df4198a5f7880b2139eb1746fe1638acdd2bf
parentfc9e3346e6749585f701e9d1cb59e60f1d152d06 (diff)
parentfae1f4ebfe6be4426685b22166f5367c92ba0833 (diff)
downloadbitcoin-fa9d86f8c4f4aba2c284f1db2cc8d0a1e89a9ce6.tar.xz
Merge #7851: [qa] pull-tester: Don't mute zmq ImportError
fae1f4e [qa] rpc-tests: Fix link in comment and label error msg (MarcoFalke) faa4f22 [qa] pull-tester: Exit early when no tests are run (MarcoFalke) fa05e22 [qa] pull-tester: Don't mute zmq ImportError (MarcoFalke)
-rwxr-xr-xqa/pull-tester/rpc-tests.py125
1 files changed, 62 insertions, 63 deletions
diff --git a/qa/pull-tester/rpc-tests.py b/qa/pull-tester/rpc-tests.py
index 6d3bda10ee..c0637209e3 100755
--- a/qa/pull-tester/rpc-tests.py
+++ b/qa/pull-tester/rpc-tests.py
@@ -40,15 +40,6 @@ if 'ENABLE_UTILS' not in vars():
ENABLE_UTILS=0
if 'ENABLE_ZMQ' not in vars():
ENABLE_ZMQ=0
-
-# python-zmq may not be installed. Handle this gracefully and with some helpful info
-if ENABLE_ZMQ:
- try:
- import zmq
- except ImportError:
- print("WARNING: \"import zmq\" failed. Setting ENABLE_ZMQ=0. " \
- "To run zmq tests, see dependency info in /qa/README.md.")
- ENABLE_ZMQ=0
ENABLE_COVERAGE=0
@@ -76,11 +67,25 @@ if "BITCOIND" not in os.environ:
if "BITCOINCLI" not in os.environ:
os.environ["BITCOINCLI"] = buildDir + '/src/bitcoin-cli' + EXEEXT
-#Disable Windows tests by default
if EXEEXT == ".exe" and "-win" not in opts:
- print "Win tests currently disabled. Use -win option to enable"
+ # https://github.com/bitcoin/bitcoin/commit/d52802551752140cf41f0d9a225a43e84404d3e9
+ # https://github.com/bitcoin/bitcoin/pull/5677#issuecomment-136646964
+ print "Win tests currently disabled by default. Use -win option to enable"
+ sys.exit(0)
+
+if not (ENABLE_WALLET == 1 and ENABLE_UTILS == 1 and ENABLE_BITCOIND == 1):
+ print "No rpc tests to run. Wallet, utils, and bitcoind must all be enabled"
sys.exit(0)
+# python-zmq may not be installed. Handle this gracefully and with some helpful info
+if ENABLE_ZMQ:
+ try:
+ import zmq
+ except ImportError as e:
+ print("ERROR: \"import zmq\" failed. Set ENABLE_ZMQ=0 or " \
+ "to run zmq tests, see dependency info in /qa/README.md.")
+ raise e
+
#Tests
testScripts = [
'bip68-112-113-p2p.py',
@@ -119,6 +124,9 @@ testScripts = [
'p2p-versionbits-warning.py',
'importprunedfunds.py',
]
+if ENABLE_ZMQ:
+ testScripts.append('zmq_test.py')
+
testScriptsExt = [
'bip9-softforks.py',
'bip65-cltv.py',
@@ -143,11 +151,6 @@ testScriptsExt = [
'pruning.py', # leave pruning last as it takes a REALLY long time
]
-#Enable ZMQ tests
-if ENABLE_ZMQ == 1:
- testScripts.append('zmq_test.py')
-
-
def runtests():
coverage = None
@@ -155,53 +158,49 @@ def runtests():
coverage = RPCCoverage()
print("Initializing coverage directory at %s\n" % coverage.dir)
- if(ENABLE_WALLET == 1 and ENABLE_UTILS == 1 and ENABLE_BITCOIND == 1):
- rpcTestDir = buildDir + '/qa/rpc-tests/'
- run_extended = '-extended' in opts
- cov_flag = coverage.flag if coverage else ''
- flags = " --srcdir %s/src %s %s" % (buildDir, cov_flag, passOn)
-
- #Run Tests
- for i in range(len(testScripts)):
- if (len(opts) == 0
- or (len(opts) == 1 and "-win" in opts )
- or run_extended
- or testScripts[i] in opts
- or re.sub(".py$", "", testScripts[i]) in opts ):
-
- print("Running testscript %s%s%s ..." % (bold[1], testScripts[i], bold[0]))
- time0 = time.time()
- subprocess.check_call(
- rpcTestDir + testScripts[i] + flags, shell=True)
- print("Duration: %s s\n" % (int(time.time() - time0)))
-
- # exit if help is called so we print just one set of
- # instructions
- p = re.compile(" -h| --help")
- if p.match(passOn):
- sys.exit(0)
-
- # Run Extended Tests
- for i in range(len(testScriptsExt)):
- if (run_extended or testScriptsExt[i] in opts
- or re.sub(".py$", "", testScriptsExt[i]) in opts):
-
- print(
- "Running 2nd level testscript "
- + "%s%s%s ..." % (bold[1], testScriptsExt[i], bold[0]))
- time0 = time.time()
- subprocess.check_call(
- rpcTestDir + testScriptsExt[i] + flags, shell=True)
- print("Duration: %s s\n" % (int(time.time() - time0)))
-
- if coverage:
- coverage.report_rpc_coverage()
-
- print("Cleaning up coverage data")
- coverage.cleanup()
-
- else:
- print "No rpc tests to run. Wallet, utils, and bitcoind must all be enabled"
+ rpcTestDir = buildDir + '/qa/rpc-tests/'
+ run_extended = '-extended' in opts
+ cov_flag = coverage.flag if coverage else ''
+ flags = " --srcdir %s/src %s %s" % (buildDir, cov_flag, passOn)
+
+ #Run Tests
+ for i in range(len(testScripts)):
+ if (len(opts) == 0
+ or (len(opts) == 1 and "-win" in opts )
+ or run_extended
+ or testScripts[i] in opts
+ or re.sub(".py$", "", testScripts[i]) in opts ):
+
+ print("Running testscript %s%s%s ..." % (bold[1], testScripts[i], bold[0]))
+ time0 = time.time()
+ subprocess.check_call(
+ rpcTestDir + testScripts[i] + flags, shell=True)
+ print("Duration: %s s\n" % (int(time.time() - time0)))
+
+ # exit if help is called so we print just one set of
+ # instructions
+ p = re.compile(" -h| --help")
+ if p.match(passOn):
+ sys.exit(0)
+
+ # Run Extended Tests
+ for i in range(len(testScriptsExt)):
+ if (run_extended or testScriptsExt[i] in opts
+ or re.sub(".py$", "", testScriptsExt[i]) in opts):
+
+ print(
+ "Running 2nd level testscript "
+ + "%s%s%s ..." % (bold[1], testScriptsExt[i], bold[0]))
+ time0 = time.time()
+ subprocess.check_call(
+ rpcTestDir + testScriptsExt[i] + flags, shell=True)
+ print("Duration: %s s\n" % (int(time.time() - time0)))
+
+ if coverage:
+ coverage.report_rpc_coverage()
+
+ print("Cleaning up coverage data")
+ coverage.cleanup()
class RPCCoverage(object):