Skip to content

Commit 6539afe

Browse files
committed
Use TestKeysInterface in functional tests
This allows stateful validation in EnforcingChannelKeys
1 parent 03cb581 commit 6539afe

File tree

5 files changed

+43
-36
lines changed

5 files changed

+43
-36
lines changed

lightning-persister/src/lib.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -198,8 +198,8 @@ mod tests {
198198
let persister_1 = FilesystemPersister::new("test_filesystem_persister_1".to_string());
199199
let chanmon_cfgs = create_chanmon_cfgs(2);
200200
let mut node_cfgs = create_node_cfgs(2, &chanmon_cfgs);
201-
let chain_mon_0 = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[0].chain_source), &chanmon_cfgs[0].tx_broadcaster, &chanmon_cfgs[0].logger, &chanmon_cfgs[0].fee_estimator, &persister_0);
202-
let chain_mon_1 = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[1].chain_source), &chanmon_cfgs[1].tx_broadcaster, &chanmon_cfgs[1].logger, &chanmon_cfgs[1].fee_estimator, &persister_1);
201+
let chain_mon_0 = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[0].chain_source), &chanmon_cfgs[0].tx_broadcaster, &chanmon_cfgs[0].logger, &chanmon_cfgs[0].fee_estimator, &persister_0, &node_cfgs[0].keys_manager);
202+
let chain_mon_1 = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[1].chain_source), &chanmon_cfgs[1].tx_broadcaster, &chanmon_cfgs[1].logger, &chanmon_cfgs[1].fee_estimator, &persister_1, &node_cfgs[1].keys_manager);
203203
node_cfgs[0].chain_monitor = chain_mon_0;
204204
node_cfgs[1].chain_monitor = chain_mon_1;
205205
let node_chanmgrs = create_node_chanmgrs(2, &node_cfgs, &[None, None]);

lightning/src/ln/chanmon_update_fail_tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ fn test_monitor_and_persister_update_fail() {
109109
let new_monitor = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(
110110
&mut ::std::io::Cursor::new(&w.0), &test_utils::OnlyReadsKeysInterface {}).unwrap().1;
111111
assert!(new_monitor == *monitor);
112-
let chain_mon = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister);
112+
let chain_mon = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister, &node_cfgs[0].keys_manager);
113113
assert!(chain_mon.watch_channel(outpoint, new_monitor).is_ok());
114114
chain_mon
115115
};

lightning/src/ln/functional_test_utils.rs

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ use ln::msgs;
2121
use ln::msgs::{ChannelMessageHandler,RoutingMessageHandler};
2222
use util::enforcing_trait_impls::EnforcingChannelKeys;
2323
use util::test_utils;
24-
use util::test_utils::{TestChainMonitor, OnlyReadsKeysInterface};
24+
use util::test_utils::TestChainMonitor;
2525
use util::events::{Event, EventsProvider, MessageSendEvent, MessageSendEventsProvider};
2626
use util::errors::APIError;
2727
use util::config::UserConfig;
@@ -96,14 +96,16 @@ pub struct TestChanMonCfg {
9696
pub chain_source: test_utils::TestChainSource,
9797
pub persister: test_utils::TestPersister,
9898
pub logger: test_utils::TestLogger,
99+
pub keys_manager: test_utils::TestKeysInterface,
100+
99101
}
100102

101103
pub struct NodeCfg<'a> {
102104
pub chain_source: &'a test_utils::TestChainSource,
103105
pub tx_broadcaster: &'a test_utils::TestBroadcaster,
104106
pub fee_estimator: &'a test_utils::TestFeeEstimator,
105107
pub chain_monitor: test_utils::TestChainMonitor<'a>,
106-
pub keys_manager: test_utils::TestKeysInterface,
108+
pub keys_manager: &'a test_utils::TestKeysInterface,
107109
pub logger: &'a test_utils::TestLogger,
108110
pub node_seed: [u8; 32],
109111
}
@@ -172,7 +174,7 @@ impl<'a, 'b, 'c> Drop for Node<'a, 'b, 'c> {
172174
let mut w = test_utils::TestVecWriter(Vec::new());
173175
old_monitor.write(&mut w).unwrap();
174176
let (_, deserialized_monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(
175-
&mut ::std::io::Cursor::new(&w.0), &OnlyReadsKeysInterface {}).unwrap();
177+
&mut ::std::io::Cursor::new(&w.0), self.keys_manager).unwrap();
176178
deserialized_monitors.push(deserialized_monitor);
177179
}
178180
}
@@ -205,7 +207,7 @@ impl<'a, 'b, 'c> Drop for Node<'a, 'b, 'c> {
205207
txn_broadcasted: Mutex::new(self.tx_broadcaster.txn_broadcasted.lock().unwrap().clone())
206208
};
207209
let chain_source = test_utils::TestChainSource::new(Network::Testnet);
208-
let chain_monitor = test_utils::TestChainMonitor::new(Some(&chain_source), &broadcaster, &self.logger, &feeest, &persister);
210+
let chain_monitor = test_utils::TestChainMonitor::new(Some(&chain_source), &broadcaster, &self.logger, &feeest, &persister, &self.keys_manager);
209211
for deserialized_monitor in deserialized_monitors.drain(..) {
210212
if let Err(_) = chain_monitor.watch_channel(deserialized_monitor.get_funding_txo().0, deserialized_monitor) {
211213
panic!();
@@ -1132,7 +1134,10 @@ pub fn create_chanmon_cfgs(node_count: usize) -> Vec<TestChanMonCfg> {
11321134
let chain_source = test_utils::TestChainSource::new(Network::Testnet);
11331135
let logger = test_utils::TestLogger::with_id(format!("node {}", i));
11341136
let persister = test_utils::TestPersister::new();
1135-
chan_mon_cfgs.push(TestChanMonCfg{ tx_broadcaster, fee_estimator, chain_source, logger, persister });
1137+
let seed = [i as u8; 32];
1138+
let keys_manager = test_utils::TestKeysInterface::new(&seed, Network::Testnet);
1139+
1140+
chan_mon_cfgs.push(TestChanMonCfg{ tx_broadcaster, fee_estimator, chain_source, logger, persister, keys_manager });
11361141
}
11371142

11381143
chan_mon_cfgs
@@ -1142,10 +1147,9 @@ pub fn create_node_cfgs<'a>(node_count: usize, chanmon_cfgs: &'a Vec<TestChanMon
11421147
let mut nodes = Vec::new();
11431148

11441149
for i in 0..node_count {
1150+
let chain_monitor = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[i].chain_source), &chanmon_cfgs[i].tx_broadcaster, &chanmon_cfgs[i].logger, &chanmon_cfgs[i].fee_estimator, &chanmon_cfgs[i].persister, &chanmon_cfgs[i].keys_manager);
11451151
let seed = [i as u8; 32];
1146-
let keys_manager = test_utils::TestKeysInterface::new(&seed, Network::Testnet);
1147-
let chain_monitor = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[i].chain_source), &chanmon_cfgs[i].tx_broadcaster, &chanmon_cfgs[i].logger, &chanmon_cfgs[i].fee_estimator, &chanmon_cfgs[i].persister);
1148-
nodes.push(NodeCfg { chain_source: &chanmon_cfgs[i].chain_source, logger: &chanmon_cfgs[i].logger, tx_broadcaster: &chanmon_cfgs[i].tx_broadcaster, fee_estimator: &chanmon_cfgs[i].fee_estimator, chain_monitor, keys_manager, node_seed: seed });
1152+
nodes.push(NodeCfg { chain_source: &chanmon_cfgs[i].chain_source, logger: &chanmon_cfgs[i].logger, tx_broadcaster: &chanmon_cfgs[i].tx_broadcaster, fee_estimator: &chanmon_cfgs[i].fee_estimator, chain_monitor, keys_manager: &chanmon_cfgs[i].keys_manager, node_seed: seed });
11491153
}
11501154

11511155
nodes
@@ -1158,7 +1162,7 @@ pub fn create_node_chanmgrs<'a, 'b>(node_count: usize, cfgs: &'a Vec<NodeCfg<'b>
11581162
default_config.channel_options.announced_channel = true;
11591163
default_config.peer_channel_config_limits.force_announced_channel_preference = false;
11601164
default_config.own_channel_config.our_htlc_minimum_msat = 1000; // sanitization being done by the sender, to exerce receiver logic we need to lift of limit
1161-
let node = ChannelManager::new(Network::Testnet, cfgs[i].fee_estimator, &cfgs[i].chain_monitor, cfgs[i].tx_broadcaster, cfgs[i].logger, &cfgs[i].keys_manager, if node_config[i].is_some() { node_config[i].clone().unwrap() } else { default_config }, 0);
1165+
let node = ChannelManager::new(Network::Testnet, cfgs[i].fee_estimator, &cfgs[i].chain_monitor, cfgs[i].tx_broadcaster, cfgs[i].logger, cfgs[i].keys_manager, if node_config[i].is_some() { node_config[i].clone().unwrap() } else { default_config }, 0);
11621166
chanmgrs.push(node);
11631167
}
11641168

lightning/src/ln/functional_tests.rs

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4324,9 +4324,9 @@ fn test_no_txn_manager_serialize_deserialize() {
43244324
logger = test_utils::TestLogger::new();
43254325
fee_estimator = test_utils::TestFeeEstimator { sat_per_kw: 253 };
43264326
persister = test_utils::TestPersister::new();
4327-
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister);
4328-
nodes[0].chain_monitor = &new_chain_monitor;
43294327
keys_manager = test_utils::TestKeysInterface::new(&nodes[0].node_seed, Network::Testnet);
4328+
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister, &keys_manager);
4329+
nodes[0].chain_monitor = &new_chain_monitor;
43304330
let mut chan_0_monitor_read = &chan_0_monitor_serialized.0[..];
43314331
let (_, mut chan_0_monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(
43324332
&mut chan_0_monitor_read, &keys_manager).unwrap();
@@ -4434,8 +4434,8 @@ fn test_manager_serialize_deserialize_events() {
44344434
fee_estimator = test_utils::TestFeeEstimator { sat_per_kw: 253 };
44354435
logger = test_utils::TestLogger::new();
44364436
persister = test_utils::TestPersister::new();
4437-
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister);
44384437
keys_manager = test_utils::TestKeysInterface::new(&nodes[0].node_seed, Network::Testnet);
4438+
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister, &keys_manager);
44394439
nodes[0].chain_monitor = &new_chain_monitor;
44404440
let mut chan_0_monitor_read = &chan_0_monitor_serialized.0[..];
44414441
let (_, mut chan_0_monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(
@@ -4510,7 +4510,7 @@ fn test_simple_manager_serialize_deserialize() {
45104510
let fee_estimator: test_utils::TestFeeEstimator;
45114511
let persister: test_utils::TestPersister;
45124512
let new_chain_monitor: test_utils::TestChainMonitor;
4513-
let keys_manager: test_utils::TestKeysInterface;
4513+
let keys_manager: &test_utils::TestKeysInterface;
45144514
let nodes_0_deserialized: ChannelManager<EnforcingChannelKeys, &test_utils::TestChainMonitor, &test_utils::TestBroadcaster, &test_utils::TestKeysInterface, &test_utils::TestFeeEstimator, &test_utils::TestLogger>;
45154515
let mut nodes = create_network(2, &node_cfgs, &node_chanmgrs);
45164516
create_announced_chan_between_nodes(&nodes, 0, 1, InitFeatures::known(), InitFeatures::known());
@@ -4527,12 +4527,12 @@ fn test_simple_manager_serialize_deserialize() {
45274527
logger = test_utils::TestLogger::new();
45284528
fee_estimator = test_utils::TestFeeEstimator { sat_per_kw: 253 };
45294529
persister = test_utils::TestPersister::new();
4530-
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister);
4531-
keys_manager = test_utils::TestKeysInterface::new(&nodes[0].node_seed, Network::Testnet);
4530+
keys_manager = &chanmon_cfgs[0].keys_manager;
4531+
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister, keys_manager);
45324532
nodes[0].chain_monitor = &new_chain_monitor;
45334533
let mut chan_0_monitor_read = &chan_0_monitor_serialized.0[..];
45344534
let (_, mut chan_0_monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(
4535-
&mut chan_0_monitor_read, &keys_manager).unwrap();
4535+
&mut chan_0_monitor_read, keys_manager).unwrap();
45364536
assert!(chan_0_monitor_read.is_empty());
45374537

45384538
let mut nodes_0_read = &nodes_0_serialized[..];
@@ -4541,7 +4541,7 @@ fn test_simple_manager_serialize_deserialize() {
45414541
channel_monitors.insert(chan_0_monitor.get_funding_txo().0, &mut chan_0_monitor);
45424542
<(BlockHash, ChannelManager<EnforcingChannelKeys, &test_utils::TestChainMonitor, &test_utils::TestBroadcaster, &test_utils::TestKeysInterface, &test_utils::TestFeeEstimator, &test_utils::TestLogger>)>::read(&mut nodes_0_read, ChannelManagerReadArgs {
45434543
default_config: UserConfig::default(),
4544-
keys_manager: &keys_manager,
4544+
keys_manager,
45454545
fee_estimator: &fee_estimator,
45464546
chain_monitor: nodes[0].chain_monitor,
45474547
tx_broadcaster: nodes[0].tx_broadcaster.clone(),
@@ -4572,7 +4572,7 @@ fn test_manager_serialize_deserialize_inconsistent_monitor() {
45724572
let fee_estimator: test_utils::TestFeeEstimator;
45734573
let persister: test_utils::TestPersister;
45744574
let new_chain_monitor: test_utils::TestChainMonitor;
4575-
let keys_manager: test_utils::TestKeysInterface;
4575+
let keys_manager: &test_utils::TestKeysInterface;
45764576
let nodes_0_deserialized: ChannelManager<EnforcingChannelKeys, &test_utils::TestChainMonitor, &test_utils::TestBroadcaster, &test_utils::TestKeysInterface, &test_utils::TestFeeEstimator, &test_utils::TestLogger>;
45774577
let mut nodes = create_network(4, &node_cfgs, &node_chanmgrs);
45784578
create_announced_chan_between_nodes(&nodes, 0, 1, InitFeatures::known(), InitFeatures::known());
@@ -4608,23 +4608,23 @@ fn test_manager_serialize_deserialize_inconsistent_monitor() {
46084608
logger = test_utils::TestLogger::new();
46094609
fee_estimator = test_utils::TestFeeEstimator { sat_per_kw: 253 };
46104610
persister = test_utils::TestPersister::new();
4611-
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister);
4611+
keys_manager = &chanmon_cfgs[0].keys_manager;
4612+
new_chain_monitor = test_utils::TestChainMonitor::new(Some(nodes[0].chain_source), nodes[0].tx_broadcaster.clone(), &logger, &fee_estimator, &persister, keys_manager);
46124613
nodes[0].chain_monitor = &new_chain_monitor;
46134614

4614-
keys_manager = test_utils::TestKeysInterface::new(&nodes[0].node_seed, Network::Testnet);
46154615

46164616
let mut node_0_stale_monitors = Vec::new();
46174617
for serialized in node_0_stale_monitors_serialized.iter() {
46184618
let mut read = &serialized[..];
4619-
let (_, monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(&mut read, &keys_manager).unwrap();
4619+
let (_, monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(&mut read, keys_manager).unwrap();
46204620
assert!(read.is_empty());
46214621
node_0_stale_monitors.push(monitor);
46224622
}
46234623

46244624
let mut node_0_monitors = Vec::new();
46254625
for serialized in node_0_monitors_serialized.iter() {
46264626
let mut read = &serialized[..];
4627-
let (_, monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(&mut read, &keys_manager).unwrap();
4627+
let (_, monitor) = <(BlockHash, ChannelMonitor<EnforcingChannelKeys>)>::read(&mut read, keys_manager).unwrap();
46284628
assert!(read.is_empty());
46294629
node_0_monitors.push(monitor);
46304630
}
@@ -4633,7 +4633,7 @@ fn test_manager_serialize_deserialize_inconsistent_monitor() {
46334633
if let Err(msgs::DecodeError::InvalidValue) =
46344634
<(BlockHash, ChannelManager<EnforcingChannelKeys, &test_utils::TestChainMonitor, &test_utils::TestBroadcaster, &test_utils::TestKeysInterface, &test_utils::TestFeeEstimator, &test_utils::TestLogger>)>::read(&mut nodes_0_read, ChannelManagerReadArgs {
46354635
default_config: UserConfig::default(),
4636-
keys_manager: &keys_manager,
4636+
keys_manager,
46374637
fee_estimator: &fee_estimator,
46384638
chain_monitor: nodes[0].chain_monitor,
46394639
tx_broadcaster: nodes[0].tx_broadcaster.clone(),
@@ -4647,7 +4647,7 @@ fn test_manager_serialize_deserialize_inconsistent_monitor() {
46474647
let (_, nodes_0_deserialized_tmp) =
46484648
<(BlockHash, ChannelManager<EnforcingChannelKeys, &test_utils::TestChainMonitor, &test_utils::TestBroadcaster, &test_utils::TestKeysInterface, &test_utils::TestFeeEstimator, &test_utils::TestLogger>)>::read(&mut nodes_0_read, ChannelManagerReadArgs {
46494649
default_config: UserConfig::default(),
4650-
keys_manager: &keys_manager,
4650+
keys_manager,
46514651
fee_estimator: &fee_estimator,
46524652
chain_monitor: nodes[0].chain_monitor,
46534653
tx_broadcaster: nodes[0].tx_broadcaster.clone(),
@@ -5753,8 +5753,8 @@ fn test_key_derivation_params() {
57535753
// We manually create the node configuration to backup the seed.
57545754
let seed = [42; 32];
57555755
let keys_manager = test_utils::TestKeysInterface::new(&seed, Network::Testnet);
5756-
let chain_monitor = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[0].chain_source), &chanmon_cfgs[0].tx_broadcaster, &chanmon_cfgs[0].logger, &chanmon_cfgs[0].fee_estimator, &chanmon_cfgs[0].persister);
5757-
let node = NodeCfg { chain_source: &chanmon_cfgs[0].chain_source, logger: &chanmon_cfgs[0].logger, tx_broadcaster: &chanmon_cfgs[0].tx_broadcaster, fee_estimator: &chanmon_cfgs[0].fee_estimator, chain_monitor, keys_manager, node_seed: seed };
5756+
let chain_monitor = test_utils::TestChainMonitor::new(Some(&chanmon_cfgs[0].chain_source), &chanmon_cfgs[0].tx_broadcaster, &chanmon_cfgs[0].logger, &chanmon_cfgs[0].fee_estimator, &chanmon_cfgs[0].persister, &keys_manager);
5757+
let node = NodeCfg { chain_source: &chanmon_cfgs[0].chain_source, logger: &chanmon_cfgs[0].logger, tx_broadcaster: &chanmon_cfgs[0].tx_broadcaster, fee_estimator: &chanmon_cfgs[0].fee_estimator, chain_monitor, keys_manager: &keys_manager, node_seed: seed };
57585758
let mut node_cfgs = create_node_cfgs(3, &chanmon_cfgs);
57595759
node_cfgs.remove(0);
57605760
node_cfgs.insert(0, node);
@@ -7451,7 +7451,7 @@ fn test_data_loss_protect() {
74517451
tx_broadcaster = test_utils::TestBroadcaster{txn_broadcasted: Mutex::new(Vec::new())};
74527452
fee_estimator = test_utils::TestFeeEstimator { sat_per_kw: 253 };
74537453
persister = test_utils::TestPersister::new();
7454-
monitor = test_utils::TestChainMonitor::new(Some(&chain_source), &tx_broadcaster, &logger, &fee_estimator, &persister);
7454+
monitor = test_utils::TestChainMonitor::new(Some(&chain_source), &tx_broadcaster, &logger, &fee_estimator, &persister, &keys_manager);
74557455
node_state_0 = {
74567456
let mut channel_monitors = HashMap::new();
74577457
channel_monitors.insert(OutPoint { txid: chan.3.txid(), index: 0 }, &mut chain_monitor);
@@ -8321,7 +8321,7 @@ fn test_update_err_monitor_lockdown() {
83218321
let new_monitor = <(BlockHash, channelmonitor::ChannelMonitor<EnforcingChannelKeys>)>::read(
83228322
&mut ::std::io::Cursor::new(&w.0), &test_utils::OnlyReadsKeysInterface {}).unwrap().1;
83238323
assert!(new_monitor == *monitor);
8324-
let watchtower = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister);
8324+
let watchtower = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister, &node_cfgs[0].keys_manager);
83258325
assert!(watchtower.watch_channel(outpoint, new_monitor).is_ok());
83268326
watchtower
83278327
};
@@ -8380,7 +8380,7 @@ fn test_concurrent_monitor_claim() {
83808380
let new_monitor = <(BlockHash, channelmonitor::ChannelMonitor<EnforcingChannelKeys>)>::read(
83818381
&mut ::std::io::Cursor::new(&w.0), &test_utils::OnlyReadsKeysInterface {}).unwrap().1;
83828382
assert!(new_monitor == *monitor);
8383-
let watchtower = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister);
8383+
let watchtower = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister, &node_cfgs[0].keys_manager);
83848384
assert!(watchtower.watch_channel(outpoint, new_monitor).is_ok());
83858385
watchtower
83868386
};
@@ -8406,7 +8406,7 @@ fn test_concurrent_monitor_claim() {
84068406
let new_monitor = <(BlockHash, channelmonitor::ChannelMonitor<EnforcingChannelKeys>)>::read(
84078407
&mut ::std::io::Cursor::new(&w.0), &test_utils::OnlyReadsKeysInterface {}).unwrap().1;
84088408
assert!(new_monitor == *monitor);
8409-
let watchtower = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister);
8409+
let watchtower = test_utils::TestChainMonitor::new(Some(&chain_source), &chanmon_cfgs[0].tx_broadcaster, &logger, &chanmon_cfgs[0].fee_estimator, &persister, &node_cfgs[0].keys_manager);
84108410
assert!(watchtower.watch_channel(outpoint, new_monitor).is_ok());
84118411
watchtower
84128412
};

0 commit comments

Comments
 (0)