Skip to content

Commit 044989e

Browse files
testing CI
1 parent 5279b02 commit 044989e

File tree

4 files changed

+16
-19
lines changed

4 files changed

+16
-19
lines changed

lightning-liquidity/Cargo.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ default = ["std", "time"]
1818
std = ["lightning/std"]
1919
time = ["std"]
2020
backtrace = ["dep:backtrace"]
21+
_test_utils = []
2122

2223
[dependencies]
2324
lightning = { version = "0.2.0", path = "../lightning", default-features = false }
@@ -48,4 +49,5 @@ check-cfg = [
4849
"cfg(c_bindings)",
4950
"cfg(backtrace)",
5051
"cfg(ldk_bench)",
52+
"cfg(_test_utils)",
5153
]

lightning-liquidity/src/lsps5/service.rs

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -61,11 +61,11 @@ pub trait TimeProvider {
6161
/// Get the current time as a duration since the Unix epoch.
6262
fn duration_since_epoch(&self) -> Duration;
6363

64-
// TODO: only on tests
64+
#[cfg(feature = "_test_utils")]
6565
/// Advance the time by a specified number of seconds.
6666
fn advance_time(&self, _seconds: u64);
6767

68-
// TODO: only on tests
68+
#[cfg(feature = "_test_utils")]
6969
/// Rewind the time by a specified number of seconds.
7070
fn rewind_time(&self, _seconds: u64);
7171
}
@@ -81,14 +81,6 @@ impl TimeProvider for DefaultTimeProvider {
8181
use std::time::{SystemTime, UNIX_EPOCH};
8282
SystemTime::now().duration_since(UNIX_EPOCH).expect("system time before Unix epoch")
8383
}
84-
85-
fn advance_time(&self, _seconds: u64) {
86-
// No op for non-mock implementations
87-
}
88-
89-
fn rewind_time(&self, _seconds: u64) {
90-
// No op for non-mock implementations
91-
}
9284
}
9385

9486
/// Server-side configuration options for LSPS5 Webhook Registration.

lightning-liquidity/tests/common/mod.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ pub(crate) struct Node {
132132
Arc<KeysManager>,
133133
Arc<ChannelManager>,
134134
Arc<dyn Filter + Send + Sync>,
135-
Arc<dyn TimeProvider>,
135+
Arc<dyn TimeProvider + Send + Sync>,
136136
>,
137137
>,
138138
Arc<KeysManager>,
@@ -144,7 +144,7 @@ pub(crate) struct Node {
144144
Arc<KeysManager>,
145145
Arc<ChannelManager>,
146146
Arc<dyn Filter + Send + Sync>,
147-
Arc<dyn TimeProvider>,
147+
Arc<dyn TimeProvider + Send + Sync>,
148148
>,
149149
>,
150150
pub(crate) chain_monitor: Arc<ChainMonitor>,
@@ -413,7 +413,8 @@ fn get_full_filepath(filepath: String, filename: String) -> String {
413413

414414
pub(crate) fn create_liquidity_node(
415415
i: usize, persist_dir: &str, network: Network, service_config: Option<LiquidityServiceConfig>,
416-
client_config: Option<LiquidityClientConfig>, time_provider: Arc<dyn TimeProvider>,
416+
client_config: Option<LiquidityClientConfig>,
417+
time_provider: Arc<dyn TimeProvider + Send + Sync>,
417418
) -> Node {
418419
let tx_broadcaster = Arc::new(test_utils::TestBroadcaster::new(network));
419420
let fee_estimator = Arc::new(test_utils::TestFeeEstimator::new(253));
@@ -506,7 +507,7 @@ pub(crate) fn create_liquidity_node(
506507

507508
pub(crate) fn create_service_and_client_nodes(
508509
persist_dir: &str, service_config: LiquidityServiceConfig,
509-
client_config: LiquidityClientConfig, time_provider: Arc<dyn TimeProvider>,
510+
client_config: LiquidityClientConfig, time_provider: Arc<dyn TimeProvider + Send + Sync>,
510511
) -> (Node, Node) {
511512
let persist_temp_path = env::temp_dir().join(persist_dir);
512513
let persist_dir = persist_temp_path.to_string_lossy().to_string();

lightning-liquidity/tests/lsps5_integration_tests.rs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
#![cfg(all(test, feature = "time"))]
1+
#![cfg(all(test, feature = "time", feature = "_test_utils"))]
22

33
mod common;
44

@@ -768,9 +768,10 @@ fn replay_prevention_test() {
768768

769769
#[test]
770770
fn stale_webhooks() {
771-
let mock_time_provider: Arc<dyn TimeProvider> = Arc::new(MockTimeProvider::new(1000));
771+
let mock_time_provider = Arc::new(MockTimeProvider::new(1000));
772+
let time_provider: Arc<dyn TimeProvider> = Arc::<MockTimeProvider>::clone(&mock_time_provider);
772773
let (service_node_id, client_node_id, service_node, client_node) =
773-
lsps5_test_setup(Arc::clone(&mock_time_provider), None);
774+
lsps5_test_setup(time_provider, None);
774775

775776
let client_handler = client_node.liquidity_manager.lsps5_client_handler().unwrap();
776777

@@ -982,14 +983,15 @@ fn test_bad_signature_notification() {
982983

983984
#[test]
984985
fn test_timestamp_notification_window_validation() {
985-
let mock_time_provider: Arc<dyn TimeProvider> = Arc::new(MockTimeProvider::new(
986+
let mock_time_provider = Arc::new(MockTimeProvider::new(
986987
SystemTime::now()
987988
.duration_since(UNIX_EPOCH)
988989
.expect("system time before Unix epoch")
989990
.as_secs(),
990991
));
992+
let time_provider: Arc<dyn TimeProvider> = Arc::<MockTimeProvider>::clone(&mock_time_provider);
991993
let (service_node_id, client_node_id, service_node, client_node) =
992-
lsps5_test_setup(Arc::clone(&mock_time_provider), None);
994+
lsps5_test_setup(time_provider, None);
993995

994996
let client_handler = client_node.liquidity_manager.lsps5_client_handler().unwrap();
995997
let service_handler = service_node.liquidity_manager.lsps5_service_handler().unwrap();

0 commit comments

Comments
 (0)