|
|
@ -11,6 +11,7 @@ import http.client
|
|
|
|
import logging
|
|
|
|
import logging
|
|
|
|
import optparse
|
|
|
|
import optparse
|
|
|
|
import os
|
|
|
|
import os
|
|
|
|
|
|
|
|
import pdb
|
|
|
|
import shutil
|
|
|
|
import shutil
|
|
|
|
import subprocess
|
|
|
|
import subprocess
|
|
|
|
import sys
|
|
|
|
import sys
|
|
|
@ -125,6 +126,8 @@ class BitcoinTestFramework(object):
|
|
|
|
help="Write tested RPC commands into this directory")
|
|
|
|
help="Write tested RPC commands into this directory")
|
|
|
|
parser.add_option("--configfile", dest="configfile",
|
|
|
|
parser.add_option("--configfile", dest="configfile",
|
|
|
|
help="Location of the test framework config file")
|
|
|
|
help="Location of the test framework config file")
|
|
|
|
|
|
|
|
parser.add_option("--pdbonfailure", dest="pdbonfailure", default=False, action="store_true",
|
|
|
|
|
|
|
|
help="Attach a python debugger if test fails")
|
|
|
|
self.add_options(parser)
|
|
|
|
self.add_options(parser)
|
|
|
|
(self.options, self.args) = parser.parse_args()
|
|
|
|
(self.options, self.args) = parser.parse_args()
|
|
|
|
|
|
|
|
|
|
|
@ -162,6 +165,10 @@ class BitcoinTestFramework(object):
|
|
|
|
except KeyboardInterrupt as e:
|
|
|
|
except KeyboardInterrupt as e:
|
|
|
|
self.log.warning("Exiting after keyboard interrupt")
|
|
|
|
self.log.warning("Exiting after keyboard interrupt")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if success == TestStatus.FAILED and self.options.pdbonfailure:
|
|
|
|
|
|
|
|
print("Testcase failed. Attaching python debugger. Enter ? for help")
|
|
|
|
|
|
|
|
pdb.set_trace()
|
|
|
|
|
|
|
|
|
|
|
|
if not self.options.noshutdown:
|
|
|
|
if not self.options.noshutdown:
|
|
|
|
self.log.info("Stopping nodes")
|
|
|
|
self.log.info("Stopping nodes")
|
|
|
|
if self.nodes:
|
|
|
|
if self.nodes:
|
|
|
|