qa: Prepare functional tests for Windows
* Pass `sys.executable` when calling a python script via the subprocess module * Don't remove the log file while it is still open and written to * Properly use os.pathsep and os.path.sep when modifying the PATH environment variable * util-tests: Use os.path.join for Windows compatibility
This commit is contained in:
parent
7abb0f0929
commit
faefd2923a
3 changed files with 13 additions and 8 deletions
test/functional/test_framework
|
@ -99,7 +99,9 @@ class BitcoinTestFramework():
|
|||
|
||||
PortSeed.n = self.options.port_seed
|
||||
|
||||
os.environ['PATH'] = self.options.srcdir + ":" + self.options.srcdir + "/qt:" + os.environ['PATH']
|
||||
os.environ['PATH'] = self.options.srcdir + os.pathsep + \
|
||||
self.options.srcdir + os.path.sep + "qt" + os.pathsep + \
|
||||
os.environ['PATH']
|
||||
|
||||
check_json_precision()
|
||||
|
||||
|
@ -148,10 +150,11 @@ class BitcoinTestFramework():
|
|||
self.log.info("Note: bitcoinds were not stopped and may still be running")
|
||||
|
||||
if not self.options.nocleanup and not self.options.noshutdown and success != TestStatus.FAILED:
|
||||
self.log.info("Cleaning up")
|
||||
shutil.rmtree(self.options.tmpdir)
|
||||
self.log.info("Cleaning up {} on exit".format(self.options.tmpdir))
|
||||
cleanup_tree_on_exit = True
|
||||
else:
|
||||
self.log.warning("Not cleaning up dir %s" % self.options.tmpdir)
|
||||
cleanup_tree_on_exit = False
|
||||
|
||||
if success == TestStatus.PASSED:
|
||||
self.log.info("Tests successful")
|
||||
|
@ -164,6 +167,8 @@ class BitcoinTestFramework():
|
|||
self.log.error("Hint: Call {} '{}' to consolidate all logs".format(os.path.normpath(os.path.dirname(os.path.realpath(__file__)) + "/../combine_logs.py"), self.options.tmpdir))
|
||||
exit_code = TEST_EXIT_FAILED
|
||||
logging.shutdown()
|
||||
if cleanup_tree_on_exit:
|
||||
shutil.rmtree(self.options.tmpdir)
|
||||
sys.exit(exit_code)
|
||||
|
||||
# Methods to override in subclass test scripts.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue