run: rustup update
- name: Check fmt
run: cargo fmt --all -- --config format_code_in_doc_comments=true --check
-
- test_hardware_wallet:
- runs-on: ubuntu-20.04
- strategy:
- matrix:
- rust:
- - version: 1.65.0 # STABLE
- - version: 1.57.0 # MSRV
- steps:
- - name: Checkout
- uses: actions/checkout@v3
- - name: Build simulator image
- run: docker build -t hwi/ledger_emulator ./ci -f ci/Dockerfile.ledger
- - name: Run simulator image
- run: docker run --name simulator --network=host hwi/ledger_emulator &
- - name: Install Python
- uses: actions/setup-python@v4
- with:
- python-version: '3.9'
- - name: Install python dependencies
- run: pip install hwi==2.1.1 protobuf==3.20.1
- - name: Set default toolchain
- run: rustup default ${{ matrix.rust.version }}
- - name: Set profile
- run: rustup set profile minimal
- - name: Update toolchain
- run: rustup update
- - name: Test
- run: cargo test --features test-hardware-signer
assert_fee_rate!(psbt, details.fee.unwrap_or(0), fee_rate);
}
-#[cfg(feature = "test-hardware-signer")]
-#[test]
-fn test_create_signer() {
- use std::sync::Arc;
-
- use bdk::signer::SignerOrdering;
- use bdk::wallet::hardwaresigner::HWISigner;
- use hwi::types::HWIChain;
- use hwi::HWIClient;
-
- let mut devices = HWIClient::enumerate().unwrap();
- if devices.is_empty() {
- panic!("No devices found!");
- }
- let device = devices.remove(0).unwrap();
- let client = HWIClient::get_client(&device, true, HWIChain::Regtest).unwrap();
- let descriptors = client.get_descriptors::<String>(None).unwrap();
- let custom_signer = HWISigner::from_device(&device, HWIChain::Regtest).unwrap();
-
- let (mut wallet, _) = get_funded_wallet(&descriptors.internal[0]);
- wallet.add_signer(
- KeychainKind::External,
- SignerOrdering(200),
- Arc::new(custom_signer),
- );
-
- let addr = wallet.get_address(LastUnused);
- let mut builder = wallet.build_tx();
- builder.drain_to(addr.script_pubkey()).drain_wallet();
- let (mut psbt, _) = builder.finish().unwrap();
-
- let finalized = wallet.sign(&mut psbt, Default::default()).unwrap();
- assert!(finalized);
-}
+// #[cfg(feature = "test-hardware-signer")]
+// #[test]
+// fn test_hardware_signer() {
+// use std::sync::Arc;
+//
+// use bdk::signer::SignerOrdering;
+// use bdk::wallet::hardwaresigner::HWISigner;
+// use hwi::types::HWIChain;
+// use hwi::HWIClient;
+//
+// let mut devices = HWIClient::enumerate().unwrap();
+// if devices.is_empty() {
+// panic!("No devices found!");
+// }
+// let device = devices.remove(0).unwrap();
+// let client = HWIClient::get_client(&device, true, HWIChain::Regtest).unwrap();
+// let descriptors = client.get_descriptors::<String>(None).unwrap();
+// let custom_signer = HWISigner::from_device(&device, HWIChain::Regtest).unwrap();
+//
+// let (mut wallet, _) = get_funded_wallet(&descriptors.internal[0]);
+// wallet.add_signer(
+// KeychainKind::External,
+// SignerOrdering(200),
+// Arc::new(custom_signer),
+// );
+//
+// let addr = wallet.get_address(LastUnused);
+// let mut builder = wallet.build_tx();
+// builder.drain_to(addr.script_pubkey()).drain_wallet();
+// let (mut psbt, _) = builder.finish().unwrap();
+//
+// let finalized = wallet.sign(&mut psbt, Default::default()).unwrap();
+// assert!(finalized);
+// }
#[test]
fn test_taproot_load_descriptor_duplicated_keys() {