From 7322489ca2777d053cf46dc9de2c21944fe13be3 Mon Sep 17 00:00:00 2001 From: Alexander Block Date: Mon, 15 Jan 2018 16:00:51 +0100 Subject: [PATCH] Merge #9276: Some minor testing cleanups 30b620c remove obsolete run-bitcoind-for-test.sh (Alex Morcos) 2a99522 remove relaypriority from rpc tests (Alex Morcos) e2184cc Reorder RPC tests for running time (Alex Morcos) # Conflicts: # qa/pull-tester/rpc-tests.py # qa/pull-tester/run-bitcoind-for-test.sh.in --- .gitignore | 1 - configure.ac | 1 - qa/pull-tester/rpc-tests.py | 51 +++++++++++++--------- qa/pull-tester/run-bitcoind-for-test.sh.in | 36 --------------- qa/rpc-tests/mempool_packages.py | 4 +- qa/rpc-tests/replace-by-fee.py | 2 +- qa/rpc-tests/smartfees.py | 6 +-- 7 files changed, 36 insertions(+), 65 deletions(-) delete mode 100644 qa/pull-tester/run-bitcoind-for-test.sh.in diff --git a/.gitignore b/.gitignore index 2bd43116f2..502122a5c5 100644 --- a/.gitignore +++ b/.gitignore @@ -108,7 +108,6 @@ coverage_percent.txt linux-coverage-build linux-build win32-build -qa/pull-tester/run-bitcoind-for-test.sh qa/pull-tester/tests_config.py qa/cache/* diff --git a/configure.ac b/configure.ac index 721746fbb0..db01dab08d 100644 --- a/configure.ac +++ b/configure.ac @@ -1078,7 +1078,6 @@ AC_SUBST(ZMQ_LIBS) AC_SUBST(PROTOBUF_LIBS) AC_SUBST(QR_LIBS) AC_CONFIG_FILES([Makefile src/Makefile doc/man/Makefile share/setup.nsi share/qt/Info.plist src/test/buildenv.py]) -AC_CONFIG_FILES([qa/pull-tester/run-bitcoind-for-test.sh],[chmod +x qa/pull-tester/run-bitcoind-for-test.sh]) AC_CONFIG_FILES([qa/pull-tester/tests_config.py],[chmod +x qa/pull-tester/tests_config.py]) AC_CONFIG_FILES([contrib/devtools/split-debug.sh],[chmod +x contrib/devtools/split-debug.sh]) AC_CONFIG_LINKS([qa/pull-tester/rpc-tests.py:qa/pull-tester/rpc-tests.py]) diff --git a/qa/pull-tester/rpc-tests.py b/qa/pull-tester/rpc-tests.py index c67dd216fe..75703ca42b 100755 --- a/qa/pull-tester/rpc-tests.py +++ b/qa/pull-tester/rpc-tests.py @@ -109,78 +109,87 @@ if ENABLE_ZMQ: testScripts = [ # longest test should go first, to favor running tests in parallel - 'p2p-fullblocktest.py', # NOTE: needs dash_hash to pass + 'wallet-hd.py', 'walletbackup.py', - 'bip68-112-113-p2p.py', + # vv Tests less than 5m vv + 'p2p-fullblocktest.py', # NOTE: needs dash_hash to pass + 'fundrawtransaction.py', + 'fundrawtransaction-hd.py', + # vv Tests less than 2m vv 'wallet.py', 'wallet-accounts.py', - 'wallet-hd.py', 'listtransactions.py', + # vv Tests less than 60s vv + 'sendheaders.py', # NOTE: needs dash_hash to pass + 'zapwallettxes.py', + 'importmulti.py', + 'mempool_limit.py', + 'merkle_blocks.py', 'receivedby.py', + 'abandonconflict.py', + 'bip68-112-113-p2p.py', + 'rawtransactions.py', + 'reindex.py', + # vv Tests less than 30s vv 'mempool_resurrect_test.py', 'txn_doublespend.py --mineblock', 'txn_clone.py', 'getchaintips.py', - 'rawtransactions.py', 'rest.py', 'mempool_spendcoinbase.py', 'mempool_reorg.py', - 'mempool_limit.py', 'httpbasics.py', 'multi_rpc.py', - 'zapwallettxes.py', 'proxy_test.py', - 'merkle_blocks.py', - 'fundrawtransaction.py', - 'fundrawtransaction-hd.py', 'signrawtransactions.py', 'nodehandling.py', - 'reindex.py', 'addressindex.py', 'timestampindex.py', 'spentindex.py', 'decodescript.py', 'blockchain.py', 'disablewallet.py', - 'sendheaders.py', # NOTE: needs dash_hash to pass 'keypool.py', 'keypool-hd.py', 'p2p-mempool.py', 'prioritise_transaction.py', 'invalidblockrequest.py', # NOTE: needs dash_hash to pass 'invalidtxrequest.py', # NOTE: needs dash_hash to pass - 'abandonconflict.py', 'p2p-versionbits-warning.py', 'preciousblock.py', 'importprunedfunds.py', 'signmessages.py', - 'importmulti.py', ] if ENABLE_ZMQ: testScripts.append('zmq_test.py') testScriptsExt = [ + # 'pruning.py', # Prune mode is incompatible with -txindex. + # vv Tests less than 20m vv + 'smartfees.py', + # vv Tests less than 5m vv + 'maxuploadtarget.py', + 'mempool_packages.py', + # vv Tests less than 2m vv + 'bip68-sequence.py', + 'getblocktemplate_longpoll.py', # FIXME: "socket.error: [Errno 54] Connection reset by peer" on my Mac, same as https://github.com/bitcoin/bitcoin/issues/6651 + # vv Tests less than 60s vv 'bip9-softforks.py', + 'p2p-feefilter.py', + 'rpcbind_test.py', + # vv Tests less than 30s vv 'bip65-cltv.py', 'bip65-cltv-p2p.py', # NOTE: needs dash_hash to pass - 'bip68-sequence.py', 'bipdersig-p2p.py', # NOTE: needs dash_hash to pass 'bipdersig.py', - 'getblocktemplate_longpoll.py', # FIXME: "socket.error: [Errno 54] Connection reset by peer" on my Mac, same as https://github.com/bitcoin/bitcoin/issues/6651 'getblocktemplate_proposals.py', 'txn_doublespend.py', 'txn_clone.py --mineblock', 'forknotify.py', 'invalidateblock.py', - 'rpcbind_test.py', - 'smartfees.py', 'maxblocksinflight.py', 'p2p-acceptblock.py', # NOTE: needs dash_hash to pass - 'mempool_packages.py', - 'maxuploadtarget.py', # 'replace-by-fee.py', # RBF is disabled in Dash Core - 'p2p-feefilter.py', - # 'pruning.py', # leave pruning last as it takes a REALLY long time #### Prune mode is incompatible with -txindex. ] diff --git a/qa/pull-tester/run-bitcoind-for-test.sh.in b/qa/pull-tester/run-bitcoind-for-test.sh.in deleted file mode 100644 index c515f51c3a..0000000000 --- a/qa/pull-tester/run-bitcoind-for-test.sh.in +++ /dev/null @@ -1,36 +0,0 @@ -#!/bin/bash -# Copyright (c) 2013-2014 The Bitcoin Core developers -# Distributed under the MIT software license, see the accompanying -# file COPYING or http://www.opensource.org/licenses/mit-license.php. -# -DATADIR="@abs_top_builddir@/.dashcore" -rm -rf "$DATADIR" -mkdir -p "$DATADIR"/regtest -touch "$DATADIR/regtest/debug.log" -tail -q -n 1 -F "$DATADIR/regtest/debug.log" | grep -m 1 -q "Done loading" & -WAITER=$! -PORT=`expr 10000 + $$ % 55536` -"@abs_top_builddir@/src/dashd@EXEEXT@" -connect=0.0.0.0 -datadir="$DATADIR" -rpcuser=user -rpcpassword=pass -listen -keypool=3 -debug -debug=net -logtimestamps -checkmempool=0 -relaypriority=0 -port=$PORT -whitelist=127.0.0.1 -regtest -rpcport=`expr $PORT + 1` & -BITCOIND=$! - -#Install a watchdog. -(sleep 10 && kill -0 $WAITER 2>/dev/null && kill -9 $BITCOIND $$)& -wait $WAITER - -if [ -n "$TIMEOUT" ]; then - timeout "$TIMEOUT"s "$@" $PORT - RETURN=$? -else - "$@" $PORT - RETURN=$? -fi - -(sleep 15 && kill -0 $BITCOIND 2>/dev/null && kill -9 $BITCOIND $$)& -kill $BITCOIND && wait $BITCOIND - -# timeout returns 124 on timeout, otherwise the return value of the child - -# If $RETURN is not 0, the test failed. Dump the tail of the debug log. -if [ $RETURN -ne 0 ]; then tail -n 200 $DATADIR/regtest/debug.log; fi - -exit $RETURN diff --git a/qa/rpc-tests/mempool_packages.py b/qa/rpc-tests/mempool_packages.py index 45dc0e65c4..f605e7524f 100755 --- a/qa/rpc-tests/mempool_packages.py +++ b/qa/rpc-tests/mempool_packages.py @@ -20,8 +20,8 @@ class MempoolPackagesTest(BitcoinTestFramework): def setup_network(self): self.nodes = [] - self.nodes.append(start_node(0, self.options.tmpdir, ["-maxorphantx=1000", "-relaypriority=0", "-debug"])) - self.nodes.append(start_node(1, self.options.tmpdir, ["-maxorphantx=1000", "-relaypriority=0", "-limitancestorcount=5", "-debug"])) + self.nodes.append(start_node(0, self.options.tmpdir, ["-maxorphantx=1000", "-debug"])) + self.nodes.append(start_node(1, self.options.tmpdir, ["-maxorphantx=1000", "-limitancestorcount=5", "-debug"])) connect_nodes(self.nodes[0], 1) self.is_network_split = False self.sync_all() diff --git a/qa/rpc-tests/replace-by-fee.py b/qa/rpc-tests/replace-by-fee.py index 34c0f9d795..8aba06c60c 100755 --- a/qa/rpc-tests/replace-by-fee.py +++ b/qa/rpc-tests/replace-by-fee.py @@ -76,7 +76,7 @@ class ReplaceByFeeTest(BitcoinTestFramework): def setup_network(self): self.nodes = [] self.nodes.append(start_node(0, self.options.tmpdir, ["-maxorphantx=1000", "-debug", - "-relaypriority=0", "-whitelist=127.0.0.1", + "-whitelist=127.0.0.1", "-limitancestorcount=50", "-limitancestorsize=101", "-limitdescendantcount=200", diff --git a/qa/rpc-tests/smartfees.py b/qa/rpc-tests/smartfees.py index a33625ec10..345ef55538 100755 --- a/qa/rpc-tests/smartfees.py +++ b/qa/rpc-tests/smartfees.py @@ -181,7 +181,7 @@ class EstimateFeeTest(BitcoinTestFramework): self.nodes = [] # Use node0 to mine blocks for input splitting self.nodes.append(start_node(0, self.options.tmpdir, ["-maxorphantx=1000", - "-relaypriority=0", "-whitelist=127.0.0.1"])) + "-whitelist=127.0.0.1"])) print("This test is time consuming, please be patient") print("Splitting inputs to small size so we can generate low priority tx's") @@ -219,12 +219,12 @@ class EstimateFeeTest(BitcoinTestFramework): # (17k is room enough for 110 or so transactions) self.nodes.append(start_node(1, self.options.tmpdir, ["-blockprioritysize=1500", "-blockmaxsize=17000", - "-maxorphantx=1000", "-relaypriority=0", "-debug=estimatefee"])) + "-maxorphantx=1000", "-debug=estimatefee"])) connect_nodes(self.nodes[1], 0) # Node2 is a stingy miner, that # produces too small blocks (room for only 55 or so transactions) - node2args = ["-blockprioritysize=0", "-blockmaxsize=8000", "-maxorphantx=1000", "-relaypriority=0"] + node2args = ["-blockprioritysize=0", "-blockmaxsize=8000", "-maxorphantx=1000"] self.nodes.append(start_node(2, self.options.tmpdir, node2args)) connect_nodes(self.nodes[0], 2)