Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
[tests] Introduce TestNode #10711
+190
−98
Conversation
jnewbery
referenced
this pull request
Jun 30, 2017
Open
[tests] Demostration/concept: Add a TestNode class to test_Framework.py #10082
fanquake
added the
Tests
label
Jun 30, 2017
|
Wallet tests were failing on Travis because bitcoind startup was timing out. Increasing timeout from 2.5s to 10s for Travis. |
MeshCollider
commented
Jul 4, 2017
|
Concept ACK e538dbf, looks good but haven't tested or gone through thoroughly |
|
The speed-up is nice, also like the idea of launching nodes in parallel. Concept ACK. |
| @@ -244,6 +244,7 @@ def get_auth_cookie(datadir, n): | ||
| if line.startswith("rpcpassword="): | ||
| assert password is None # Ensure that there is only one rpcpassword line | ||
| password = line.split("=")[1].strip("\n") | ||
| + # print(os.path.join(datadir, "regtest", ".cookie")) |
|
fixed @jtimon's review comment and rebased. |
laanwj
removed
from Blockers in High-priority for review
Jul 13, 2017
|
rebased with TestNode changes for multiwallet. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
jnewbery commentedJun 30, 2017
Continues #10082
TestNode is a class responsible for all state related to a bitcoind node
under test. It stores local state, is responsible for tracking the
bitcoind process and delegates unrecognised messages to the RPC
connection.
This commit changes start_nodes and stop_nodes to start and stop the
bitcoind nodes in parallel, making test setup and teardown much faster.
On my vm, this changeset reduces total test_runner runtime for the base set of tests
(including building the cache) from 263s to 195s (a 25% speedup). Note that the time
reported by test_runner does not include time spent building the cache:
with TestNode:
master: