|
@@ -1,4 +1,9 @@
|
|
-//! CDK lightning backend for CLN
|
|
|
|
|
|
+//! CDK Fake LN Backend
|
|
|
|
+//!
|
|
|
|
+//! Used for testing where quotes are auto filled
|
|
|
|
+
|
|
|
|
+#![warn(missing_docs)]
|
|
|
|
+#![warn(rustdoc::bare_urls)]
|
|
|
|
|
|
use std::pin::Pin;
|
|
use std::pin::Pin;
|
|
use std::sync::Arc;
|
|
use std::sync::Arc;
|
|
@@ -26,6 +31,7 @@ use uuid::Uuid;
|
|
|
|
|
|
pub mod error;
|
|
pub mod error;
|
|
|
|
|
|
|
|
+/// Fake Wallet
|
|
#[derive(Clone)]
|
|
#[derive(Clone)]
|
|
pub struct FakeWallet {
|
|
pub struct FakeWallet {
|
|
fee_reserve: FeeReserve,
|
|
fee_reserve: FeeReserve,
|
|
@@ -36,6 +42,7 @@ pub struct FakeWallet {
|
|
}
|
|
}
|
|
|
|
|
|
impl FakeWallet {
|
|
impl FakeWallet {
|
|
|
|
+ /// Creat new [`FakeWallet`]
|
|
pub fn new(
|
|
pub fn new(
|
|
fee_reserve: FeeReserve,
|
|
fee_reserve: FeeReserve,
|
|
mint_settings: MintMeltSettings,
|
|
mint_settings: MintMeltSettings,
|
|
@@ -69,12 +76,7 @@ impl MintLightning for FakeWallet {
|
|
async fn wait_any_invoice(
|
|
async fn wait_any_invoice(
|
|
&self,
|
|
&self,
|
|
) -> Result<Pin<Box<dyn Stream<Item = String> + Send>>, Self::Err> {
|
|
) -> Result<Pin<Box<dyn Stream<Item = String> + Send>>, Self::Err> {
|
|
- let receiver = self
|
|
|
|
- .receiver
|
|
|
|
- .lock()
|
|
|
|
- .await
|
|
|
|
- .take()
|
|
|
|
- .ok_or(Error::Custom("No reeiver".to_string()))?;
|
|
|
|
|
|
+ let receiver = self.receiver.lock().await.take().ok_or(Error::NoReceiver)?;
|
|
let receiver_stream = ReceiverStream::new(receiver);
|
|
let receiver_stream = ReceiverStream::new(receiver);
|
|
Ok(Box::pin(receiver_stream.map(|label| label)))
|
|
Ok(Box::pin(receiver_stream.map(|label| label)))
|
|
}
|
|
}
|