Skip to content

Commit 5381c23

Browse files
committed
Replace BlockNotifier with Node in test utilities
Change confirm_transaction and connect_blocks to take a Node instead of a BlockNotifier. This is in preparation for signaling watch events back via a refactoring of ManyChannelMonitor and ChainWatchInterface.
1 parent 82b608d commit 5381c23

File tree

3 files changed

+54
-51
lines changed

3 files changed

+54
-51
lines changed

lightning/src/ln/chanmon_update_fail_tests.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1756,11 +1756,11 @@ fn do_during_funding_monitor_fail(confirm_a_first: bool, restore_b_before_conf:
17561756
};
17571757

17581758
if confirm_a_first {
1759-
confirm_transaction(&nodes[0].block_notifier, &funding_tx);
1759+
confirm_transaction(&nodes[0], &funding_tx);
17601760
nodes[1].node.handle_funding_locked(&nodes[0].node.get_our_node_id(), &get_event_msg!(nodes[0], MessageSendEvent::SendFundingLocked, nodes[1].node.get_our_node_id()));
17611761
} else {
17621762
assert!(!restore_b_before_conf);
1763-
confirm_transaction(&nodes[1].block_notifier, &funding_tx);
1763+
confirm_transaction(&nodes[1], &funding_tx);
17641764
assert!(nodes[1].node.get_and_clear_pending_msg_events().is_empty());
17651765
}
17661766

@@ -1772,7 +1772,7 @@ fn do_during_funding_monitor_fail(confirm_a_first: bool, restore_b_before_conf:
17721772
assert!(nodes[1].node.get_and_clear_pending_msg_events().is_empty());
17731773

17741774
if !restore_b_before_conf {
1775-
confirm_transaction(&nodes[1].block_notifier, &funding_tx);
1775+
confirm_transaction(&nodes[1], &funding_tx);
17761776
assert!(nodes[1].node.get_and_clear_pending_msg_events().is_empty());
17771777
assert!(nodes[1].node.get_and_clear_pending_events().is_empty());
17781778
}
@@ -1785,12 +1785,12 @@ fn do_during_funding_monitor_fail(confirm_a_first: bool, restore_b_before_conf:
17851785
let (channel_id, (announcement, as_update, bs_update)) = if !confirm_a_first {
17861786
nodes[0].node.handle_funding_locked(&nodes[1].node.get_our_node_id(), &get_event_msg!(nodes[1], MessageSendEvent::SendFundingLocked, nodes[0].node.get_our_node_id()));
17871787

1788-
confirm_transaction(&nodes[0].block_notifier, &funding_tx);
1788+
confirm_transaction(&nodes[0], &funding_tx);
17891789
let (funding_locked, channel_id) = create_chan_between_nodes_with_value_confirm_second(&nodes[1], &nodes[0]);
17901790
(channel_id, create_chan_between_nodes_with_value_b(&nodes[0], &nodes[1], &funding_locked))
17911791
} else {
17921792
if restore_b_before_conf {
1793-
confirm_transaction(&nodes[1].block_notifier, &funding_tx);
1793+
confirm_transaction(&nodes[1], &funding_tx);
17941794
}
17951795
let (funding_locked, channel_id) = create_chan_between_nodes_with_value_confirm_second(&nodes[0], &nodes[1]);
17961796
(channel_id, create_chan_between_nodes_with_value_b(&nodes[1], &nodes[0], &funding_locked))

lightning/src/ln/functional_test_utils.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,9 @@ use std::mem;
4444
use std::collections::HashMap;
4545

4646
pub const CHAN_CONFIRM_DEPTH: u32 = 100;
47-
pub fn confirm_transaction<'a, 'b: 'a>(notifier: &'a chaininterface::BlockNotifierRef<'b>, tx: &Transaction) {
47+
48+
pub fn confirm_transaction<'a, 'b, 'c, 'd>(node: &'a Node<'b, 'c, 'd>, tx: &Transaction) {
49+
let notifier = &node.block_notifier;
4850
let dummy_tx = Transaction { version: 0, lock_time: 0, input: Vec::new(), output: Vec::new() };
4951
let dummy_tx_count = tx.version as usize;
5052
let mut block = Block {
@@ -62,7 +64,8 @@ pub fn confirm_transaction<'a, 'b: 'a>(notifier: &'a chaininterface::BlockNotifi
6264
}
6365
}
6466

65-
pub fn connect_blocks<'a, 'b>(notifier: &'a chaininterface::BlockNotifierRef<'b>, depth: u32, height: u32, parent: bool, prev_blockhash: BlockHash) -> BlockHash {
67+
pub fn connect_blocks<'a, 'b, 'c, 'd>(node: &'a Node<'b, 'c, 'd>, depth: u32, height: u32, parent: bool, prev_blockhash: BlockHash) -> BlockHash {
68+
let notifier = &node.block_notifier;
6669
let mut block = Block {
6770
header: BlockHeader { version: 0x2000000, prev_blockhash: if parent { prev_blockhash } else { Default::default() }, merkle_root: Default::default(), time: 42, bits: 42, nonce: 42 },
6871
txdata: vec![],
@@ -387,7 +390,7 @@ pub fn create_chan_between_nodes_with_value_init<'a, 'b, 'c>(node_a: &Node<'a, '
387390
}
388391

389392
pub fn create_chan_between_nodes_with_value_confirm_first<'a, 'b, 'c, 'd>(node_recv: &'a Node<'b, 'c, 'c>, node_conf: &'a Node<'b, 'c, 'd>, tx: &Transaction) {
390-
confirm_transaction(&node_conf.block_notifier, &tx);
393+
confirm_transaction(node_conf, tx);
391394
node_recv.node.handle_funding_locked(&node_conf.node.get_our_node_id(), &get_event_msg!(node_conf, MessageSendEvent::SendFundingLocked, node_recv.node.get_our_node_id()));
392395
}
393396

@@ -413,7 +416,7 @@ pub fn create_chan_between_nodes_with_value_confirm_second<'a, 'b, 'c>(node_recv
413416

414417
pub fn create_chan_between_nodes_with_value_confirm<'a, 'b, 'c, 'd>(node_a: &'a Node<'b, 'c, 'd>, node_b: &'a Node<'b, 'c, 'd>, tx: &Transaction) -> ((msgs::FundingLocked, msgs::AnnouncementSignatures), [u8; 32]) {
415418
create_chan_between_nodes_with_value_confirm_first(node_a, node_b, tx);
416-
confirm_transaction(&node_a.block_notifier, &tx);
419+
confirm_transaction(node_a, tx);
417420
create_chan_between_nodes_with_value_confirm_second(node_b, node_a)
418421
}
419422

0 commit comments

Comments
 (0)