@@ -650,6 +650,7 @@ use futures_util::{dummy_waker, OptionalSelector, Selector, SelectorOutput};
650
650
/// # use std::sync::atomic::{AtomicBool, Ordering};
651
651
/// # use std::time::SystemTime;
652
652
/// # use lightning_background_processor::{process_events_async, GossipSync};
653
+ /// # use lightning_liquidity::lsps5::service::TimeProvider;
653
654
/// # struct Logger {}
654
655
/// # impl lightning::util::logger::Logger for Logger {
655
656
/// # fn log(&self, _record: lightning::util::logger::Record) {}
@@ -661,6 +662,16 @@ use futures_util::{dummy_waker, OptionalSelector, Selector, SelectorOutput};
661
662
/// # fn remove(&self, primary_namespace: &str, secondary_namespace: &str, key: &str, lazy: bool) -> io::Result<()> { Ok(()) }
662
663
/// # fn list(&self, primary_namespace: &str, secondary_namespace: &str) -> io::Result<Vec<String>> { Ok(Vec::new()) }
663
664
/// # }
665
+ /// #
666
+ /// # use core::time::Duration;
667
+ /// # struct DefaultTimeProvider;
668
+ /// #
669
+ /// # impl TimeProvider for DefaultTimeProvider {
670
+ /// # fn duration_since_epoch(&self) -> Duration {
671
+ /// # use std::time::{SystemTime, UNIX_EPOCH};
672
+ /// # SystemTime::now().duration_since(UNIX_EPOCH).expect("system time before Unix epoch")
673
+ /// # }
674
+ /// # }
664
675
/// # struct EventHandler {}
665
676
/// # impl EventHandler {
666
677
/// # async fn handle_event(&self, _: lightning::events::Event) -> Result<(), ReplayEvent> { Ok(()) }
@@ -676,7 +687,7 @@ use futures_util::{dummy_waker, OptionalSelector, Selector, SelectorOutput};
676
687
/// # type P2PGossipSync<UL> = lightning::routing::gossip::P2PGossipSync<Arc<NetworkGraph>, Arc<UL>, Arc<Logger>>;
677
688
/// # type ChannelManager<B, F, FE> = lightning::ln::channelmanager::SimpleArcChannelManager<ChainMonitor<B, F, FE>, B, FE, Logger>;
678
689
/// # type OnionMessenger<B, F, FE> = lightning::onion_message::messenger::OnionMessenger<Arc<lightning::sign::KeysManager>, Arc<lightning::sign::KeysManager>, Arc<Logger>, Arc<ChannelManager<B, F, FE>>, Arc<lightning::onion_message::messenger::DefaultMessageRouter<Arc<NetworkGraph>, Arc<Logger>, Arc<lightning::sign::KeysManager>>>, Arc<ChannelManager<B, F, FE>>, lightning::ln::peer_handler::IgnoringMessageHandler, lightning::ln::peer_handler::IgnoringMessageHandler, lightning::ln::peer_handler::IgnoringMessageHandler>;
679
- /// # type LiquidityManager<B, F, FE> = lightning_liquidity::LiquidityManager<Arc<lightning::sign::KeysManager>, Arc<ChannelManager<B, F, FE>>, Arc<F>>;
690
+ /// # type LiquidityManager<B, F, FE> = lightning_liquidity::LiquidityManager<Arc<lightning::sign::KeysManager>, Arc<ChannelManager<B, F, FE>>, Arc<F>, Arc<DefaultTimeProvider> >;
680
691
/// # type Scorer = RwLock<lightning::routing::scoring::ProbabilisticScorer<Arc<NetworkGraph>, Arc<Logger>>>;
681
692
/// # type PeerManager<B, F, FE, UL> = lightning::ln::peer_handler::SimpleArcPeerManager<SocketDescriptor, ChainMonitor<B, F, FE>, B, FE, Arc<UL>, Logger, F, Store>;
682
693
/// #
@@ -1153,7 +1164,7 @@ impl Drop for BackgroundProcessor {
1153
1164
}
1154
1165
}
1155
1166
1156
- #[ cfg( all( feature = "std" , test) ) ]
1167
+ #[ cfg( all( feature = "std" , feature = "time" , test) ) ]
1157
1168
mod tests {
1158
1169
use super :: { BackgroundProcessor , GossipSync , FRESHNESS_TIMER } ;
1159
1170
use bitcoin:: constants:: { genesis_block, ChainHash } ;
@@ -1198,7 +1209,8 @@ mod tests {
1198
1209
use lightning:: util:: sweep:: { OutputSpendStatus , OutputSweeperSync , PRUNE_DELAY_BLOCKS } ;
1199
1210
use lightning:: util:: test_utils;
1200
1211
use lightning:: { get_event, get_event_msg} ;
1201
- use lightning_liquidity:: lsps5:: service:: TimeProvider ;
1212
+ #[ cfg( feature = "time" ) ]
1213
+ use lightning_liquidity:: lsps5:: service:: DefaultTimeProvider ;
1202
1214
use lightning_liquidity:: LiquidityManager ;
1203
1215
use lightning_persister:: fs_store:: FilesystemStore ;
1204
1216
use lightning_rapid_gossip_sync:: RapidGossipSync ;
@@ -1642,16 +1654,6 @@ mod tests {
1642
1654
path. to_str ( ) . unwrap ( ) . to_string ( )
1643
1655
}
1644
1656
1645
- pub struct DefaultTimeProvider ;
1646
-
1647
- #[ cfg( feature = "std" ) ]
1648
- impl TimeProvider for DefaultTimeProvider {
1649
- fn duration_since_epoch ( & self ) -> Duration {
1650
- use std:: time:: { SystemTime , UNIX_EPOCH } ;
1651
- SystemTime :: now ( ) . duration_since ( UNIX_EPOCH ) . expect ( "system time before Unix epoch" )
1652
- }
1653
- }
1654
-
1655
1657
fn create_nodes ( num_nodes : usize , persist_dir : & str ) -> ( String , Vec < Node > ) {
1656
1658
let persist_temp_path = env:: temp_dir ( ) . join ( persist_dir) ;
1657
1659
let persist_dir = persist_temp_path. to_string_lossy ( ) . to_string ( ) ;
@@ -1753,16 +1755,14 @@ mod tests {
1753
1755
Arc :: clone ( & logger) ,
1754
1756
Arc :: clone ( & keys_manager) ,
1755
1757
) ) ;
1756
- let time_provider = Arc :: new ( DefaultTimeProvider ) ;
1757
- let liquidity_manager = Arc :: new ( LiquidityManager :: new_with_custom_time_provider (
1758
+ let liquidity_manager = Arc :: new ( LiquidityManager :: new (
1758
1759
Arc :: clone ( & keys_manager) ,
1759
1760
Arc :: clone ( & keys_manager) ,
1760
1761
Arc :: clone ( & manager) ,
1761
1762
None ,
1762
1763
None ,
1763
1764
None ,
1764
1765
None ,
1765
- time_provider,
1766
1766
) ) ;
1767
1767
let node = Node {
1768
1768
node : manager,
0 commit comments