Merge #17378: TestShell: Fix typos & implement cleanups

2493770e36 TestShell: Return self from setup() (James Chiang)
a8dea45524 TestShell: Simplify default setting of num_nodes (James Chiang)
9c7806e4bf Doc: Remove backticks in test-shell.md code block (James Chiang)
d3ed06e2cd TestShell: Fix typo in TestShell warning printout (James Chiang)

Pull request description:

  This PR follows up on #17288 and fixes typos and implements code clean-ups suggested by reviewers of 19139ee.

  - Typo in `test_shell.py` warning
  - Typo in `test-shell.md` code block
  - Simplified default setting of `num_nodes` in `TestShell.setup()`
  - Enable initializer chaining: `TestShell().setup()`

ACKs for top commit:
  MarcoFalke:
    ACK 2493770e36
  instagibbs:
    tACK 2493770e36
  jnewbery:
    utACK 2493770e36

Tree-SHA512: 8fa7c2c550dbc3ec899de9dc328cd55cfa6daafe3b888aa5427e72fea69f064d938ec68e15bfa57109c0f6c3583e627ac4bd69303a11575d056941bd253adee0
This commit is contained in:
MarcoFalke 2019-11-05 12:36:09 -05:00
commit 54a337478d
No known key found for this signature in database
GPG key ID: D2EA4850E7528B25
2 changed files with 6 additions and 8 deletions

View file

@ -31,7 +31,7 @@ importing the `TestShell` class from the `test_shell` sub-package.
```
>>> import sys
>>> sys.path.insert(0, "/path/to/bitcoin/test/functional")
>>> from test_framework.test_shell import `TestShell`
>>> from test_framework.test_shell import TestShell
```
The following `TestShell` methods manage the lifetime of the underlying bitcoind
@ -51,8 +51,7 @@ The following sections demonstrate how to initialize, run, and shut down a
## 3. Initializing a `TestShell` object
```
>>> test = TestShell()
>>> test.setup(num_nodes=2, setup_clean_chain=True)
>>> test = TestShell().setup(num_nodes=2, setup_clean_chain=True)
20XX-XX-XXTXX:XX:XX.XXXXXXX TestFramework (INFO): Initializing test directory /path/to/bitcoin_func_test_XXXXXXX
```
The `TestShell` forwards all functional test parameters of the parent
@ -66,8 +65,7 @@ temporary folder. If you need more bitcoind nodes than set by default (1),
simply increase the `num_nodes` parameter during setup.
```
>>> test2 = TestShell()
>>> test2.setup()
>>> test2 = TestShell().setup()
TestShell is already running!
```

View file

@ -29,8 +29,7 @@ class TestShell:
# Num_nodes parameter must be set
# by BitcoinTestFramework child class.
self.num_nodes = kwargs.get('num_nodes', 1)
kwargs.pop('num_nodes', None)
self.num_nodes = 1
# User parameters override default values.
for key, value in kwargs.items():
@ -43,6 +42,7 @@ class TestShell:
super().setup()
self.running = True
return self
def shutdown(self):
if not self.running:
@ -53,7 +53,7 @@ class TestShell:
def reset(self):
if self.running:
print("Shutdown TestWrapper before resetting!")
print("Shutdown TestShell before resetting!")
else:
self.num_nodes = None
super().__init__()