From e2ec6ff56fe9461f4ac93a2d5c0e7beabec98c85 Mon Sep 17 00:00:00 2001 From: Vladimir Fomene Date: Thu, 9 Nov 2023 10:19:59 +0300 Subject: [PATCH] test: test getting keychain for a script --- crates/bdk/tests/wallet.rs | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/crates/bdk/tests/wallet.rs b/crates/bdk/tests/wallet.rs index aad8c2db2..8990b21ea 100644 --- a/crates/bdk/tests/wallet.rs +++ b/crates/bdk/tests/wallet.rs @@ -60,6 +60,21 @@ fn receive_output_in_latest_block(wallet: &mut Wallet, value: u64) -> OutPoint { // OP_PUSH. const P2WPKH_FAKE_WITNESS_SIZE: usize = 106; +#[test] +fn test_which_keychain_derived_script() { + let (mut segwit_wallet, _) = get_funded_wallet(get_test_wpkh()); + let addr = segwit_wallet.get_address(New); + let script = addr.script_pubkey(); + let keychain = segwit_wallet.which_keychain_derived(&script).unwrap(); + assert_eq!(keychain.0, KeychainKind::External); + + let (mut taproot_wallet, _) = get_funded_wallet(get_test_tr_single_sig()); + let addr = taproot_wallet.get_address(New); + let script = addr.script_pubkey(); + let keychain = segwit_wallet.which_keychain_derived(&script); + assert!(keychain.is_none()); +} + #[test] fn test_descriptor_checksum() { let (wallet, _) = get_funded_wallet(get_test_wpkh());