Skip to content

Commit 73c2967

Browse files
committed
Test ChainMonitor's Electrum interface
1 parent a36da8a commit 73c2967

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

lightning/src/ln/functional_test_utils.rs

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -121,21 +121,25 @@ pub fn connect_block<'a, 'b, 'c, 'd>(node: &'a Node<'b, 'c, 'd>, block: &Block)
121121
do_connect_block(node, block, false);
122122
}
123123

124-
fn do_connect_block<'a, 'b, 'c, 'd>(node: &'a Node<'b, 'c, 'd>, block: &Block, skip_manager: bool) {
125-
let txdata: Vec<_> = block.txdata.iter().enumerate().collect();
124+
fn do_connect_block<'a, 'b, 'c, 'd>(node: &'a Node<'b, 'c, 'd>, block: &Block, skip_intermediaries: bool) {
126125
let height = node.best_block_info().1 + 1;
127-
node.chain_monitor.chain_monitor.block_connected(&block.header, &txdata, height);
128-
if !skip_manager {
126+
if !skip_intermediaries {
127+
let txdata: Vec<_> = block.txdata.iter().enumerate().collect();
129128
match *node.connect_style.borrow() {
130129
ConnectStyle::BestBlockFirst|ConnectStyle::BestBlockFirstSkippingBlocks => {
130+
node.chain_monitor.chain_monitor.update_best_block(&block.header, height);
131+
node.chain_monitor.chain_monitor.transactions_confirmed(&block.header, &txdata, height);
131132
node.node.update_best_block(&block.header, height);
132133
node.node.transactions_confirmed(&block.header, height, &txdata);
133134
},
134135
ConnectStyle::TransactionsFirst|ConnectStyle::TransactionsFirstSkippingBlocks => {
136+
node.chain_monitor.chain_monitor.transactions_confirmed(&block.header, &txdata, height);
137+
node.chain_monitor.chain_monitor.update_best_block(&block.header, height);
135138
node.node.transactions_confirmed(&block.header, height, &txdata);
136139
node.node.update_best_block(&block.header, height);
137140
},
138141
ConnectStyle::FullBlockViaListen => {
142+
node.chain_monitor.chain_monitor.block_connected(&block.header, &txdata, height);
139143
Listen::block_connected(node.node, &block, height);
140144
}
141145
}
@@ -150,17 +154,19 @@ pub fn disconnect_blocks<'a, 'b, 'c, 'd>(node: &'a Node<'b, 'c, 'd>, count: u32)
150154
assert!(orig_header.1 > 0); // Cannot disconnect genesis
151155
let prev_header = node.blocks.borrow().last().unwrap().clone();
152156

153-
node.chain_monitor.chain_monitor.block_disconnected(&orig_header.0, orig_header.1);
154157
match *node.connect_style.borrow() {
155158
ConnectStyle::FullBlockViaListen => {
159+
node.chain_monitor.chain_monitor.block_disconnected(&orig_header.0, orig_header.1);
156160
Listen::block_disconnected(node.node, &orig_header.0, orig_header.1);
157161
},
158162
ConnectStyle::BestBlockFirstSkippingBlocks|ConnectStyle::TransactionsFirstSkippingBlocks => {
159163
if i == count - 1 {
164+
node.chain_monitor.chain_monitor.update_best_block(&prev_header.0, prev_header.1);
160165
node.node.update_best_block(&prev_header.0, prev_header.1);
161166
}
162167
},
163168
_ => {
169+
node.chain_monitor.chain_monitor.update_best_block(&prev_header.0, prev_header.1);
164170
node.node.update_best_block(&prev_header.0, prev_header.1);
165171
},
166172
}

0 commit comments

Comments
 (0)