@@ -66,6 +66,7 @@ def run_test(self):
66
66
self .test_getnodeaddresses ()
67
67
self .test_addpeeraddress ()
68
68
self .test_sendmsgtopeer ()
69
+ self .test_getaddrmaninfo ()
69
70
70
71
def test_connection_count (self ):
71
72
self .log .info ("Test getconnectioncount" )
@@ -360,6 +361,28 @@ def test_sendmsgtopeer(self):
360
361
node .sendmsgtopeer (peer_id = 0 , msg_type = "addr" , msg = zero_byte_string .hex ())
361
362
self .wait_until (lambda : len (self .nodes [0 ].getpeerinfo ()) == 0 , timeout = 10 )
362
363
364
+ def test_getaddrmaninfo (self ):
365
+ self .log .info ("Test getaddrmaninfo" )
366
+ node = self .nodes [1 ]
367
+
368
+ self .log .debug ("Test that getaddrmaninfo is a hidden RPC" )
369
+ # It is hidden from general help, but its detailed help may be called directly.
370
+ assert "getaddrmaninfo" not in node .help ()
371
+ assert "getaddrmaninfo" in node .help ("getaddrmaninfo" )
372
+
373
+ # current count of ipv4 addresses in addrman is {'new':1, 'tried':1}
374
+ self .log .info ("Test that count of addresses in addrman match expected values" )
375
+ res = node .getaddrmaninfo ()
376
+ assert_equal (res ["ipv4" ]["new" ], 1 )
377
+ assert_equal (res ["ipv4" ]["tried" ], 1 )
378
+ assert_equal (res ["ipv4" ]["total" ], 2 )
379
+ assert_equal (res ["all_networks" ]["new" ], 1 )
380
+ assert_equal (res ["all_networks" ]["tried" ], 1 )
381
+ assert_equal (res ["all_networks" ]["total" ], 2 )
382
+ for net in ["ipv6" , "onion" , "i2p" , "cjdns" ]:
383
+ assert_equal (res [net ]["new" ], 0 )
384
+ assert_equal (res [net ]["tried" ], 0 )
385
+ assert_equal (res [net ]["total" ], 0 )
363
386
364
387
if __name__ == '__main__' :
365
388
NetTest ().main ()
0 commit comments