Merge #818: Add derivation_index to GetAddressResult
33384c89b5cdaec9d4a477644609ff0d1508cf9f Add derivation_index to GetAddressResult (edouardparis) Pull request description: My bad, i pushed my fixes in a rush in #815 and wrecked the PR. ACKs for top commit: darosior: ACK 33384c89b5cdaec9d4a477644609ff0d1508cf9f Tree-SHA512: 5f18506a84ff10fbe13757c2522b11a7ec005243f8698425f1d761d4b36378c256150d3d8337fefc1938232990004bbd629878b42b032b1dd0349d593a39386d
This commit is contained in:
commit
514535d8d6
@ -306,7 +306,7 @@ impl DaemonControl {
|
||||
.receive_descriptor()
|
||||
.derive(index, &self.secp)
|
||||
.address(self.config.bitcoin_config.network);
|
||||
GetAddressResult::new(address)
|
||||
GetAddressResult::new(address, index)
|
||||
}
|
||||
|
||||
/// list addresses
|
||||
@ -945,7 +945,17 @@ pub struct GetInfoResult {
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct GetAddressResult {
|
||||
#[serde(deserialize_with = "deser_addr_assume_checked")]
|
||||
address: bitcoin::Address,
|
||||
pub address: bitcoin::Address,
|
||||
pub derivation_index: bip32::ChildNumber,
|
||||
}
|
||||
|
||||
impl GetAddressResult {
|
||||
pub fn new(address: bitcoin::Address, derivation_index: bip32::ChildNumber) -> Self {
|
||||
Self {
|
||||
address,
|
||||
derivation_index,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
@ -953,16 +963,6 @@ pub struct GetLabelsResult {
|
||||
pub labels: HashMap<String, String>,
|
||||
}
|
||||
|
||||
impl GetAddressResult {
|
||||
pub fn new(address: bitcoin::Address) -> Self {
|
||||
Self { address }
|
||||
}
|
||||
|
||||
pub fn address(&self) -> &bitcoin::Address {
|
||||
&self.address
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, PartialEq, Eq)]
|
||||
pub struct AddressInfo {
|
||||
index: u32,
|
||||
|
||||
@ -35,6 +35,8 @@ def test_getaddress(lianad):
|
||||
assert "address" in res
|
||||
# We'll get a new one at every call
|
||||
assert res["address"] != lianad.rpc.getnewaddress()["address"]
|
||||
# new address has derivation_index higher than the previous one
|
||||
assert lianad.rpc.getnewaddress()["derivation_index"] == res["derivation_index"] + 2
|
||||
|
||||
|
||||
def test_listaddresses(lianad):
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user