Abstract HttpClient into HttpClientMethods trait (#429)

* Abstract HttpClientMethods trait
---------

Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
This commit is contained in:
David Caseria
2024-11-04 14:14:40 -05:00
committed by GitHub
parent d9fb5f814a
commit 7eb3449710
10 changed files with 201 additions and 111 deletions

View File

@@ -11,11 +11,11 @@ use cdk::cdk_lightning::MintLightning;
use cdk::dhke::construct_proofs;
use cdk::mint::FeeReserve;
use cdk::nuts::{
CurrencyUnit, Id, KeySet, MeltMethodSettings, MintInfo, MintMethodSettings, MintQuoteState,
Nuts, PaymentMethod, PreMintSecrets, Proofs, State,
CurrencyUnit, Id, KeySet, MeltMethodSettings, MintBolt11Request, MintInfo, MintMethodSettings,
MintQuoteBolt11Request, MintQuoteState, Nuts, PaymentMethod, PreMintSecrets, Proofs, State,
};
use cdk::types::{LnKey, QuoteTTL};
use cdk::wallet::client::HttpClient;
use cdk::wallet::client::{HttpClient, HttpClientMethods};
use cdk::{Mint, Wallet};
use cdk_fake_wallet::FakeWallet;
use init_regtest::{get_mint_addr, get_mint_port, get_mint_url};
@@ -158,8 +158,14 @@ pub async fn mint_proofs(
let wallet_client = HttpClient::new();
let request = MintQuoteBolt11Request {
amount,
unit: CurrencyUnit::Sat,
description,
};
let mint_quote = wallet_client
.post_mint_quote(mint_url.parse()?, 1.into(), CurrencyUnit::Sat, description)
.post_mint_quote(mint_url.parse()?, request)
.await?;
println!("Please pay: {}", mint_quote.request);
@@ -179,13 +185,12 @@ pub async fn mint_proofs(
let premint_secrets = PreMintSecrets::random(keyset_id, amount, &SplitTarget::default())?;
let mint_response = wallet_client
.post_mint(
mint_url.parse()?,
&mint_quote.quote,
premint_secrets.clone(),
)
.await?;
let request = MintBolt11Request {
quote: mint_quote.quote,
outputs: premint_secrets.blinded_messages(),
};
let mint_response = wallet_client.post_mint(mint_url.parse()?, request).await?;
let pre_swap_proofs = construct_proofs(
mint_response.signatures,