From fab1fb737b826c01fca4c10f3416cd84a8eca970 Mon Sep 17 00:00:00 2001 From: MarcoFalke Date: Fri, 23 Jun 2017 09:17:18 +0200 Subject: [PATCH] [qa] blockchain: Pass on closed connection during generate call --- test/functional/blockchain.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/test/functional/blockchain.py b/test/functional/blockchain.py index e205c6400..eeef05efd 100755 --- a/test/functional/blockchain.py +++ b/test/functional/blockchain.py @@ -18,6 +18,7 @@ Tests correspond to code in rpc/blockchain.cpp. """ from decimal import Decimal +import http.client import subprocess from test_framework.test_framework import BitcoinTestFramework @@ -28,6 +29,7 @@ from test_framework.util import ( assert_is_hex_string, assert_is_hash_string, bitcoind_processes, + BITCOIND_PROC_WAIT_TIMEOUT, ) @@ -140,9 +142,12 @@ class BlockchainTest(BitcoinTestFramework): assert_equal(self.nodes[0].getblockcount(), 206) self.log.debug('Node should not stop at this height') assert_raises(subprocess.TimeoutExpired, lambda: bitcoind_processes[0].wait(timeout=3)) - self.nodes[0].generate(1) + try: + self.nodes[0].generate(1) + except (ConnectionError, http.client.BadStatusLine): + pass # The node already shut down before response self.log.debug('Node should stop at this height...') - bitcoind_processes[0].wait(timeout=3) + bitcoind_processes[0].wait(timeout=BITCOIND_PROC_WAIT_TIMEOUT) self.nodes[0] = self.start_node(0, self.options.tmpdir) assert_equal(self.nodes[0].getblockcount(), 207)