Skip to content

Commit 42e808f

Browse files
committed
Merge #334: Fix getnodeaddresses test
c9cf940 Run the formatter (Jamil Lambert, PhD) 5bdcdc8 Fix getnodeaddresses test (Jamil Lambert, PhD) 8be0a12 Move getnodeaddresses redefinition from v27 to v22 (Jamil Lambert, PhD) cfbba65 Add hidden RPC addpeeraddress to v21 (Jamil Lambert, PhD) Pull request description: The return shape of the RPC is not tested since an empty list is returned. - Add the hidden RPC `addpeeraddress` in v21 in a new module called `hidden`. - In the `getnodeaddresses` test use the hidden RPC `addpeeraddress` for v21 and later to add an address to the address manager table. Assert that the returned `GetNodeAddresses` contains the added peer address and port. Closes #320 ACKs for top commit: tcharding: ACK c9cf940 Tree-SHA512: 42e51f6345b59ae8108a9a9624da8bdec1458d102eaf70548fc9eee8ad09db3b33ac1985e9617db49260f1cc09ef1a5d7fb469f7da218d0c6ca035947c796c96
2 parents 40210cb + c9cf940 commit 42e808f

File tree

23 files changed

+176
-99
lines changed

23 files changed

+176
-99
lines changed

client/src/client_sync/v21/hidden.rs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
// SPDX-License-Identifier: CC0-1.0
2+
3+
//! Macros for implementing JSON-RPC methods on a client.
4+
//!
5+
//! Specifically this is methods found under the `== Generating ==` section of the
6+
//! API docs of Bitcoin Core `v0.21`.
7+
//!
8+
//! All macros require `Client` to be in scope.
9+
//!
10+
//! See or use the `define_jsonrpc_minreq_client!` macro to define a `Client`.
11+
12+
/// Implements Bitcoin Core JSON-RPC API method `addpeeraddress`.
13+
#[macro_export]
14+
macro_rules! impl_client_v21_add_peer_address {
15+
() => {
16+
impl Client {
17+
pub fn add_peer_address(&self, address: &str, port: u16) -> Result<AddPeerAddress> {
18+
self.call("addpeeraddress", &[address.into(), port.into()])
19+
}
20+
}
21+
};
22+
}

client/src/client_sync/v21/mod.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
//! We ignore option arguments unless they effect the shape of the returned JSON data.
66
77
mod generating;
8+
mod hidden;
89
mod util;
910
mod wallet;
1011

@@ -69,6 +70,9 @@ crate::impl_client_v17__generate_to_address!();
6970
crate::impl_client_v20__generate_to_descriptor!();
7071
crate::impl_client_v17__invalidate_block!();
7172

73+
// == Hidden ==
74+
crate::impl_client_v21_add_peer_address!();
75+
7276
// == Mining ==
7377
crate::impl_client_v17__get_block_template!();
7478
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v22/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,9 @@ crate::impl_client_v17__generate_to_address!();
6868
crate::impl_client_v20__generate_to_descriptor!();
6969
crate::impl_client_v17__invalidate_block!();
7070

71+
// == Hidden ==
72+
crate::impl_client_v21_add_peer_address!();
73+
7174
// == Mining ==
7275
crate::impl_client_v17__get_block_template!();
7376
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v23/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,9 @@ crate::impl_client_v17__generate_to_address!();
7171
crate::impl_client_v20__generate_to_descriptor!();
7272
crate::impl_client_v17__invalidate_block!();
7373

74+
// == Hidden ==
75+
crate::impl_client_v21_add_peer_address!();
76+
7477
// == Mining ==
7578
crate::impl_client_v17__get_block_template!();
7679
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v24/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,9 @@ crate::impl_client_v17__generate_to_address!();
7272
crate::impl_client_v20__generate_to_descriptor!();
7373
crate::impl_client_v17__invalidate_block!();
7474

75+
// == Hidden ==
76+
crate::impl_client_v21_add_peer_address!();
77+
7578
// == Mining ==
7679
crate::impl_client_v17__get_block_template!();
7780
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v25/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,9 @@ crate::impl_client_v17__generate_to_address!();
7373
crate::impl_client_v20__generate_to_descriptor!();
7474
crate::impl_client_v17__invalidate_block!();
7575

76+
// == Hidden ==
77+
crate::impl_client_v21_add_peer_address!();
78+
7679
// == Mining ==
7780
crate::impl_client_v17__get_block_template!();
7881
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v26/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,9 @@ crate::impl_client_v17__generate_to_address!();
7979
crate::impl_client_v20__generate_to_descriptor!();
8080
crate::impl_client_v17__invalidate_block!();
8181

82+
// == Hidden ==
83+
crate::impl_client_v21_add_peer_address!();
84+
8285
// == Mining ==
8386
crate::impl_client_v17__get_block_template!();
8487
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v27/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,9 @@ crate::impl_client_v17__generate_to_address!();
7373
crate::impl_client_v20__generate_to_descriptor!();
7474
crate::impl_client_v17__invalidate_block!();
7575

76+
// == Hidden ==
77+
crate::impl_client_v21_add_peer_address!();
78+
7679
// == Mining ==
7780
crate::impl_client_v17__get_block_template!();
7881
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v28/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@ crate::impl_client_v17__generate_to_address!();
7676
crate::impl_client_v20__generate_to_descriptor!();
7777
crate::impl_client_v17__invalidate_block!();
7878

79+
// == Hidden ==
80+
crate::impl_client_v21_add_peer_address!();
81+
7982
// == Mining ==
8083
crate::impl_client_v17__get_block_template!();
8184
crate::impl_client_v17__get_mining_info!();

client/src/client_sync/v29/mod.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,9 @@ crate::impl_client_v17__generate_to_address!();
7676
crate::impl_client_v20__generate_to_descriptor!();
7777
crate::impl_client_v17__invalidate_block!();
7878

79+
// == Hidden ==
80+
crate::impl_client_v21_add_peer_address!();
81+
7982
// == Mining ==
8083
crate::impl_client_v17__get_block_template!();
8184
crate::impl_client_v17__get_mining_info!();

0 commit comments

Comments
 (0)