Crates.io | elementsd |
lib.rs | elementsd |
version | 0.9.2 |
source | src |
created_at | 2021-12-01 15:39:49.655006 |
updated_at | 2024-08-19 15:23:53.517545 |
description | Utility to run a liquidregtest elements process, useful in integration testing environment |
homepage | |
repository | https://github.com/RCasatta/elementsd |
max_upload_size | |
id | 490318 |
size | 26,571 |
Utility to run a liquidregtest elementsd process, useful in integration testing environment.
use elementsd::bitcoincore_rpc::RpcApi;
let exe = elementsd::exe_path().expect("elementsd executable must be provided in ELEMENTSD_EXE, or with a feature like '0_21_0', or be in PATH");
let elementsd = elementsd::ElementsD::new(exe).unwrap();
let info = elementsd
.client()
.call::<bitcoind::bitcoincore_rpc::jsonrpc::serde_json::Value>("getblockchaininfo", &[])
.unwrap();
assert_eq!(info.get("chain").unwrap(), "liquidregtest");
You can also start elementsd with validate pegin capability by connecting an instance of bitcoind
.
See test test_elementsd_with_validatepegin
See the similar BitcoinD for details
For determinisim, in nix you cannot hit the internet within the build.rs
. Moreover, some downstream crates cannot remove the auto-download feature from their dev-deps. In this case you can set the ELEMENTSD_SKIP_DOWNLOAD
env var and provide the elementsd
executable in the PATH
(or skip the test execution).
To build docs:
RUSTDOCFLAGS="--cfg docsrs" cargo +nightly doc --features download,doc --open
MSRV 1.56.1 may require downgrading dependencies. See our
.github/workflows/test.yml
file for a complete list.