mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-10-10 19:43:13 +02:00
Merge #19405: rpc, cli: add network in/out connections to getnetworkinfo
and -getinfo
581b343d5b
Add in/out connections to cli -getinfo (Jon Atack)d9cc13e88d
UNIX_EPOCH_TIME fixup in rpc getnettotals (Jon Atack)1ab49b81cf
Add in/out connections to rpc getnetworkinfo (Jon Atack) Pull request description: This is basic info that is present in the GUI that I've been wishing to have exposed via the RPC and CLI without needing a bash workaround or script. For human users it would also be useful to have it in `-getinfo`. `bitcoin-cli getnetworkinfo` ``` "connections": 15, "connections_in": 6, "connections_out": 9, ``` `bitcoin-cli -getinfo` ``` "connections": { "in": 6, "out": 9, "total": 15 }, ``` Update the tests, RPC help, and release notes for the changes. Also fixup the `getnettotals` timemillis help while touching `rpc/net.cpp`. ----- Reviewers can manually test this PR by [building from source](https://jonatack.github.io/articles/how-to-compile-bitcoin-core-and-run-the-tests), launching bitcoind, and then running `bitcoin-cli -getinfo`, `bitcoin-cli getnetworkinfo`, `bitcoin-cli help getnetworkinfo`, and `bitcoin-cli help getnettotals` (for the UNIX epoch time change). ACKs for top commit: eriknylund: > tACK [581b343
](581b343d5b
) on master at [a0a422c
](a0a422c34c
), ran unit & functional tests and and confirmed changes on an existing datadir ✌️ benthecarman: tACK `581b343` willcl-ark: tACK for581b343d5b
, this time rebased onto master at862fde88be
. shesek: tACK `581b343`. This provides what I needed, thanks! n-thumann: tACK581b343
on master ata0a422c
, ran unit & functional tests and and confirmed changes on an existing datadir ✌️ Tree-SHA512: 08dd3ac8fefae401bd8253ff3ac027603c528eeccba53cedcb127771316173a7052fce44af8fa33ac98ebc4cf2a2b11cdefd949995d55e9b9a5942b876d00dc5
This commit is contained in:
@@ -102,8 +102,11 @@ class NetTest(BitcoinTestFramework):
|
||||
|
||||
def test_getnetworkinfo(self):
|
||||
self.log.info("Test getnetworkinfo")
|
||||
assert_equal(self.nodes[0].getnetworkinfo()['networkactive'], True)
|
||||
assert_equal(self.nodes[0].getnetworkinfo()['connections'], 2)
|
||||
info = self.nodes[0].getnetworkinfo()
|
||||
assert_equal(info['networkactive'], True)
|
||||
assert_equal(info['connections'], 2)
|
||||
assert_equal(info['connections_in'], 1)
|
||||
assert_equal(info['connections_out'], 1)
|
||||
|
||||
with self.nodes[0].assert_debug_log(expected_msgs=['SetNetworkActive: false\n']):
|
||||
self.nodes[0].setnetworkactive(state=False)
|
||||
@@ -117,8 +120,11 @@ class NetTest(BitcoinTestFramework):
|
||||
connect_nodes(self.nodes[0], 1)
|
||||
connect_nodes(self.nodes[1], 0)
|
||||
|
||||
assert_equal(self.nodes[0].getnetworkinfo()['networkactive'], True)
|
||||
assert_equal(self.nodes[0].getnetworkinfo()['connections'], 2)
|
||||
info = self.nodes[0].getnetworkinfo()
|
||||
assert_equal(info['networkactive'], True)
|
||||
assert_equal(info['connections'], 2)
|
||||
assert_equal(info['connections_in'], 1)
|
||||
assert_equal(info['connections_out'], 1)
|
||||
|
||||
# check the `servicesnames` field
|
||||
network_info = [node.getnetworkinfo() for node in self.nodes]
|
||||
|
Reference in New Issue
Block a user