[tests] Allow stderr to be tested against specified string

Allow bitcoind's stderr to be tested against a specified string on
shutdown.
This commit is contained in:
John Newbery
2018-02-07 10:51:13 -05:00
parent e5036715c8
commit beee49ba1f
3 changed files with 17 additions and 13 deletions

View File

@@ -188,7 +188,7 @@ class TestNode():
wallet_path = "wallet/%s" % wallet_name
return self.rpc / wallet_path
def stop_node(self):
def stop_node(self, expected_stderr=''):
"""Stop the node."""
if not self.running:
return
@@ -197,6 +197,13 @@ class TestNode():
self.stop()
except http.client.CannotSendRequest:
self.log.exception("Unable to stop node.")
# Check that stderr is as expected
self.stderr.seek(0)
stderr = self.stderr.read().decode('utf-8').strip()
if stderr != expected_stderr:
raise AssertionError("Unexpected stderr {} != {}".format(stderr, expected_stderr))
del self.p2ps[:]
def is_node_stopped(self):