Skip to content

Commit 9c491d9

Browse files
committed
Test walletcreatefundedpsbt
The RPC is implemented but untested. Add a test and update the types table.
1 parent f0e8e4f commit 9c491d9

File tree

14 files changed

+35
-14
lines changed

14 files changed

+35
-14
lines changed

integration_test/tests/wallet.rs

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,15 @@ use bitcoin::address::{Address, KnownHrp, NetworkChecked};
99
use bitcoin::bip32::{Xpriv, Xpub};
1010
use bitcoin::{secp256k1, Amount, CompressedPublicKey, FeeRate, Network, PrivateKey, PublicKey};
1111
use integration_test::{Node, NodeExt as _, Wallet};
12-
use node::{mtype, AddressType, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp};
12+
use node::{
13+
mtype, AddressType, ImportMultiRequest, ImportMultiScriptPubKey, ImportMultiTimestamp, WalletCreateFundedPsbtInput
14+
};
1315

1416
#[cfg(not(feature = "v20_and_below"))]
1517
use node::ImportDescriptorsRequest;
1618

1719
use node::vtype::*; // All the version specific types.
20+
use std::collections::BTreeMap;
1821
use std::fs;
1922
use std::time::{SystemTime, UNIX_EPOCH};
2023

@@ -988,6 +991,24 @@ fn wallet__simulate_raw_transaction() {
988991
assert!(model.balance_change.is_negative());
989992
}
990993

994+
#[test]
995+
fn wallet__wallet_create_funded_psbt__modelled() {
996+
let node = Node::with_wallet(Wallet::Default, &[]);
997+
node.fund_wallet();
998+
999+
let addr = node.client.new_address().expect("newaddress");
1000+
let outputs = BTreeMap::from([(addr, Amount::from_sat(100_000))]);
1001+
let json: WalletCreateFundedPsbt = node
1002+
.client
1003+
.wallet_create_funded_psbt(vec![], vec![outputs])
1004+
.expect("walletcreatefundedpsbt");
1005+
1006+
let model: Result<mtype::WalletCreateFundedPsbt, WalletCreateFundedPsbtError> = json.into_model();
1007+
let psbt = model.unwrap();
1008+
1009+
assert!(!psbt.psbt.inputs.is_empty());
1010+
}
1011+
9911012
#[test]
9921013
fn wallet__wallet_lock() {
9931014
let node = Node::with_wallet(Wallet::Default, &[]);

types/src/v17/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@
203203
//! | signmessage | version + model | |
204204
//! | signrawtransactionwithwallet | version + model | |
205205
//! | unloadwallet | returns nothing | |
206-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
206+
//! | walletcreatefundedpsbt | version + model | |
207207
//! | walletlock | returns nothing | |
208208
//! | walletpassphrase | returns nothing | |
209209
//! | walletpassphrasechange | returns nothing | |

types/src/v18/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,7 @@
205205
//! | signmessage | version + model | |
206206
//! | signrawtransactionwithwallet | version + model | |
207207
//! | unloadwallet | returns nothing | |
208-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
208+
//! | walletcreatefundedpsbt | version + model | |
209209
//! | walletlock | returns nothing | |
210210
//! | walletpassphrase | returns nothing | |
211211
//! | walletpassphrasechange | returns nothing | |

types/src/v19/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@
207207
//! | signmessage | version + model | |
208208
//! | signrawtransactionwithwallet | version + model | |
209209
//! | unloadwallet | returns nothing | |
210-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
210+
//! | walletcreatefundedpsbt | version + model | |
211211
//! | walletlock | returns nothing | |
212212
//! | walletpassphrase | returns nothing | |
213213
//! | walletpassphrasechange | returns nothing | |

types/src/v20/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@
208208
//! | signmessage | version + model | |
209209
//! | signrawtransactionwithwallet | version + model | |
210210
//! | unloadwallet | returns nothing | |
211-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
211+
//! | walletcreatefundedpsbt | version + model | |
212212
//! | walletlock | returns nothing | |
213213
//! | walletpassphrase | returns nothing | |
214214
//! | walletpassphrasechange | returns nothing | |

types/src/v21/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -214,7 +214,7 @@
214214
//! | signrawtransactionwithwallet | version + model | |
215215
//! | unloadwallet | returns nothing | |
216216
//! | upgradewallet | version | |
217-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
217+
//! | walletcreatefundedpsbt | version + model | |
218218
//! | walletlock | returns nothing | |
219219
//! | walletpassphrase | returns nothing | |
220220
//! | walletpassphrasechange | returns nothing | |

types/src/v22/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -224,7 +224,7 @@
224224
//! | signrawtransactionwithwallet | version + model | |
225225
//! | unloadwallet | returns nothing | |
226226
//! | upgradewallet | version | |
227-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
227+
//! | walletcreatefundedpsbt | version + model | |
228228
//! | walletdisplayaddress | version + model | UNTESTED |
229229
//! | walletlock | returns nothing | |
230230
//! | walletpassphrase | returns nothing | |

types/src/v23/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -217,7 +217,7 @@
217217
//! | signrawtransactionwithwallet | version + model | |
218218
//! | unloadwallet | returns nothing | |
219219
//! | upgradewallet | version | |
220-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
220+
//! | walletcreatefundedpsbt | version + model | |
221221
//! | walletdisplayaddress | version + model | UNTESTED |
222222
//! | walletlock | returns nothing | |
223223
//! | walletpassphrase | returns nothing | |

types/src/v24/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@
221221
//! | simulaterawtransaction | version + model | |
222222
//! | unloadwallet | returns nothing | |
223223
//! | upgradewallet | version | |
224-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
224+
//! | walletcreatefundedpsbt | version + model | |
225225
//! | walletdisplayaddress | version + model | UNTESTED |
226226
//! | walletlock | returns nothing | |
227227
//! | walletpassphrase | returns nothing | |

types/src/v25/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,7 @@
222222
//! | simulaterawtransaction | version + model | |
223223
//! | unloadwallet | returns nothing | |
224224
//! | upgradewallet | version | |
225-
//! | walletcreatefundedpsbt | version + model | UNTESTED |
225+
//! | walletcreatefundedpsbt | version + model | |
226226
//! | walletdisplayaddress | version + model | UNTESTED |
227227
//! | walletlock | returns nothing | |
228228
//! | walletpassphrase | returns nothing | |

0 commit comments

Comments
 (0)