From 4ad0f54c3048d00e0e6a3702c2e3c9c4899dde91 Mon Sep 17 00:00:00 2001 From: Steve Myers Date: Fri, 12 Feb 2021 09:53:37 -0800 Subject: [PATCH] [ci] Rename MAGICAL_ env vars to BDK_, for tests use wallet name in RPC calls --- .github/workflows/cont_integration.yml | 13 +++++++------ Cargo.toml | 4 ++-- ci/start-core.sh | 10 +++++----- testutils/src/lib.rs | 16 +++++++++------- 4 files changed, 23 insertions(+), 20 deletions(-) diff --git a/.github/workflows/cont_integration.yml b/.github/workflows/cont_integration.yml index 17f08ac1..65f0b45e 100644 --- a/.github/workflows/cont_integration.yml +++ b/.github/workflows/cont_integration.yml @@ -76,13 +76,14 @@ jobs: test-electrum: name: Test electrum runs-on: ubuntu-16.04 - container: bitcoindevkit/electrs + container: bitcoindevkit/electrs:0.2.0 env: - MAGICAL_RPC_AUTH: USER_PASS - MAGICAL_RPC_USER: admin - MAGICAL_RPC_PASS: passw - MAGICAL_RPC_URL: 127.0.0.1:18443 - MAGICAL_ELECTRUM_URL: tcp://127.0.0.1:60401 + BDK_RPC_AUTH: USER_PASS + BDK_RPC_USER: admin + BDK_RPC_PASS: passw + BDK_RPC_URL: 127.0.0.1:18443 + BDK_RPC_WALLET: bdk-test + BDK_ELECTRUM_URL: tcp://127.0.0.1:60401 steps: - name: Checkout uses: actions/checkout@v2 diff --git a/Cargo.toml b/Cargo.toml index 1624da25..3739064d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -59,8 +59,8 @@ test-electrum = ["electrum"] test-md-docs = ["electrum"] [dev-dependencies] -bdk-testutils = "^0.3" -bdk-testutils-macros = "^0.3" +bdk-testutils = { path = "./testutils"} +bdk-testutils-macros = { path = "./testutils-macros"} serial_test = "0.4" lazy_static = "1.4" env_logger = "0.7" diff --git a/ci/start-core.sh b/ci/start-core.sh index e11afe23..59c024e1 100755 --- a/ci/start-core.sh +++ b/ci/start-core.sh @@ -1,16 +1,16 @@ #!/usr/bin/env sh echo "Starting bitcoin node." -/root/bitcoind -regtest -server -daemon -fallbackfee=0.0002 -rpcuser=admin -rpcpassword=passw -rpcallowip=0.0.0.0/0 -rpcbind=0.0.0.0 -blockfilterindex=1 -peerblockfilters=1 +/root/bitcoind -regtest -server -daemon -fallbackfee=0.0002 -rpcuser=$BDK_RPC_USER -rpcpassword=$BDK_RPC_PASS -rpcallowip=0.0.0.0/0 -rpcbind=0.0.0.0 -blockfilterindex=1 -peerblockfilters=1 echo "Waiting for bitcoin node." -until /root/bitcoin-cli -regtest -rpcuser=admin -rpcpassword=passw getblockchaininfo; do +until /root/bitcoin-cli -regtest -rpcuser=$BDK_RPC_USER -rpcpassword=$BDK_RPC_PASS getblockchaininfo; do sleep 1 done -/root/bitcoind -regtest -rpcuser=admin -rpcpassword=passw createwallet bdk-test +/root/bitcoin-cli -regtest -rpcuser=$BDK_RPC_USER -rpcpassword=$BDK_RPC_PASS createwallet $BDK_RPC_WALLET echo "Generating 150 bitcoin blocks." -ADDR=$(/root/bitcoin-cli -regtest -rpcuser=admin -rpcpassword=passw getnewaddress) -/root/bitcoin-cli -regtest -rpcuser=admin -rpcpassword=passw generatetoaddress 150 $ADDR +ADDR=$(/root/bitcoin-cli -regtest -rpcuser=$BDK_RPC_USER -rpcpassword=$BDK_RPC_PASS -rpcwallet=$BDK_RPC_WALLET getnewaddress) +/root/bitcoin-cli -regtest -rpcuser=$BDK_RPC_USER -rpcpassword=$BDK_RPC_PASS generatetoaddress 150 $ADDR echo "Starting electrs node." nohup /root/electrs --network regtest --jsonrpc-import & diff --git a/testutils/src/lib.rs b/testutils/src/lib.rs index 2e0a8a05..15b920c8 100644 --- a/testutils/src/lib.rs +++ b/testutils/src/lib.rs @@ -53,20 +53,20 @@ pub use electrum_client::{Client as ElectrumClient, ElectrumApi}; // TODO: we currently only support env vars, we could also parse a toml file fn get_auth() -> Auth { - match env::var("MAGICAL_RPC_AUTH").as_ref().map(String::as_ref) { + match env::var("BDK_RPC_AUTH").as_ref().map(String::as_ref) { Ok("USER_PASS") => Auth::UserPass( - env::var("MAGICAL_RPC_USER").unwrap(), - env::var("MAGICAL_RPC_PASS").unwrap(), + env::var("BDK_RPC_USER").unwrap(), + env::var("BDK_RPC_PASS").unwrap(), ), _ => Auth::CookieFile(PathBuf::from( - env::var("MAGICAL_RPC_COOKIEFILE") + env::var("BDK_RPC_COOKIEFILE") .unwrap_or("/home/user/.bitcoin/regtest/.cookie".to_string()), )), } } pub fn get_electrum_url() -> String { - env::var("MAGICAL_ELECTRUM_URL").unwrap_or("tcp://127.0.0.1:50001".to_string()) + env::var("BDK_ELECTRUM_URL").unwrap_or("tcp://127.0.0.1:50001".to_string()) } pub struct TestClient { @@ -311,8 +311,10 @@ where impl TestClient { pub fn new() -> Self { - let url = env::var("MAGICAL_RPC_URL").unwrap_or("127.0.0.1:18443".to_string()); - let client = RpcClient::new(format!("http://{}", url), get_auth()).unwrap(); + let url = env::var("BDK_RPC_URL").unwrap_or("127.0.0.1:18443".to_string()); + let wallet = env::var("BDK_RPC_WALLET").unwrap_or("bdk-test".to_string()); + let client = + RpcClient::new(format!("http://{}/wallet/{}", url, wallet), get_auth()).unwrap(); let electrum = ElectrumClient::new(&get_electrum_url()).unwrap(); TestClient { client, electrum }