Skip to content

Commit 71a6018

Browse files
committed
Merge #154: Implement getnodeaddresses method and test
4c4d8ba Run cargo format (Jamil Lambert, PhD) 0c676c7 Add v18 getnodeaddresses, test and reexport (Jamil Lambert, PhD) Pull request description: Implement the `getnodeaddresses` method added in V18, including integration test and reexports in newer versions. ACKs for top commit: tcharding: ACK 4c4d8ba Tree-SHA512: 44469f2140c808cd76fdf3b7b363951e90c73fefda974493fb4870816ec28b8dc7862a428a7b4c16bb95bf86eb9d7bab00678f7678de8339324543eabdaeee06
2 parents 1670c1c + 4c4d8ba commit 71a6018

File tree

25 files changed

+109
-21
lines changed

25 files changed

+109
-21
lines changed

client/src/client_sync/v18/mod.rs

Lines changed: 2 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
pub mod control;
8+
pub mod network;
89
pub mod raw_transactions;
910

1011
use std::collections::BTreeMap;
@@ -74,6 +75,7 @@ crate::impl_client_v17__submitblock!();
7475
crate::impl_client_v17__getaddednodeinfo!();
7576
crate::impl_client_v17__getnettotals!();
7677
crate::impl_client_v17__getnetworkinfo!();
78+
crate::impl_client_v18__getnodeaddresses!();
7779
crate::impl_client_v17__getpeerinfo!();
7880

7981
// == Rawtransactions ==

client/src/client_sync/v18/network.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+
//! Requires `Client` to be in scope.
6+
//!
7+
//! Specifically this is methods found under the `== Network ==` section of the
8+
//! API docs of Bitcoin Core `v0.18`.
9+
//!
10+
//! See, or use the `define_jsonrpc_minreq_client!` macro to define a `Client`.
11+
12+
/// Implements Bitcoin Core JSON-RPC API method `getnodeaddresses`
13+
#[macro_export]
14+
macro_rules! impl_client_v18__getnodeaddresses {
15+
() => {
16+
impl Client {
17+
pub fn get_node_addresses(&self) -> Result<GetNodeAddresses> {
18+
self.call("getnodeaddresses", &[])
19+
}
20+
}
21+
};
22+
}

client/src/client_sync/v19/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ crate::impl_client_v17__submitblock!();
7373
crate::impl_client_v17__getaddednodeinfo!();
7474
crate::impl_client_v17__getnettotals!();
7575
crate::impl_client_v17__getnetworkinfo!();
76+
crate::impl_client_v18__getnodeaddresses!();
7677
crate::impl_client_v17__getpeerinfo!();
7778

7879
// == Rawtransactions ==

client/src/client_sync/v20.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ crate::impl_client_v17__submitblock!();
7070
crate::impl_client_v17__getaddednodeinfo!();
7171
crate::impl_client_v17__getnettotals!();
7272
crate::impl_client_v17__getnetworkinfo!();
73+
crate::impl_client_v18__getnodeaddresses!();
7374
crate::impl_client_v17__getpeerinfo!();
7475

7576
// == Rawtransactions ==

client/src/client_sync/v21/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ crate::impl_client_v17__submitblock!();
7272
crate::impl_client_v17__getaddednodeinfo!();
7373
crate::impl_client_v17__getnettotals!();
7474
crate::impl_client_v17__getnetworkinfo!();
75+
crate::impl_client_v18__getnodeaddresses!();
7576
crate::impl_client_v17__getpeerinfo!();
7677

7778
// == Rawtransactions ==

client/src/client_sync/v22/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ crate::impl_client_v17__submitblock!();
7373
crate::impl_client_v17__getaddednodeinfo!();
7474
crate::impl_client_v17__getnettotals!();
7575
crate::impl_client_v17__getnetworkinfo!();
76+
crate::impl_client_v18__getnodeaddresses!();
7677
crate::impl_client_v17__getpeerinfo!();
7778

7879
// == Rawtransactions ==

client/src/client_sync/v23/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ crate::impl_client_v17__submitblock!();
7474
crate::impl_client_v17__getaddednodeinfo!();
7575
crate::impl_client_v17__getnettotals!();
7676
crate::impl_client_v17__getnetworkinfo!();
77+
crate::impl_client_v18__getnodeaddresses!();
7778
crate::impl_client_v17__getpeerinfo!();
7879

7980
// == Rawtransactions ==

client/src/client_sync/v24.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ crate::impl_client_v17__submitblock!();
7171
crate::impl_client_v17__getaddednodeinfo!();
7272
crate::impl_client_v17__getnettotals!();
7373
crate::impl_client_v17__getnetworkinfo!();
74+
crate::impl_client_v18__getnodeaddresses!();
7475
crate::impl_client_v17__getpeerinfo!();
7576

7677
// == Rawtransactions ==

client/src/client_sync/v25.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ crate::impl_client_v17__submitblock!();
7171
crate::impl_client_v17__getaddednodeinfo!();
7272
crate::impl_client_v17__getnettotals!();
7373
crate::impl_client_v17__getnetworkinfo!();
74+
crate::impl_client_v18__getnodeaddresses!();
7475
crate::impl_client_v17__getpeerinfo!();
7576

7677
// == Rawtransactions ==

client/src/client_sync/v26/mod.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ crate::impl_client_v17__submitblock!();
7676
crate::impl_client_v17__getaddednodeinfo!();
7777
crate::impl_client_v17__getnettotals!();
7878
crate::impl_client_v17__getnetworkinfo!();
79+
crate::impl_client_v18__getnodeaddresses!();
7980
crate::impl_client_v17__getpeerinfo!();
8081

8182
// == Rawtransactions ==

0 commit comments

Comments
 (0)