Prevent TestNodeCLI.args mixups

Change TestNodeCLI.__call__() to return a new instance instead of modifying the
existing instance. This way, it's possible to create different cli objects that
have their own options (for example -rpcwallet options to connect to different
wallets), and options set for a single call (`node.cli(options).method(args)`)
will no longer leak into future calls.
This commit is contained in:
Russell Yanofsky 2017-12-20 18:41:12 -05:00 committed by John Newbery
parent fcfb952bca
commit ca9085afc5

View File

@ -203,9 +203,10 @@ class TestNodeCLI():
def __call__(self, *args, input=None):
# TestNodeCLI is callable with bitcoin-cli command-line args
self.args = [str(arg) for arg in args]
self.input = input
return self
cli = TestNodeCLI(self.binary, self.datadir)
cli.args = [str(arg) for arg in args]
cli.input = input
return cli
def __getattr__(self, command):
def dispatcher(*args, **kwargs):