Skip to content

Commit bf793a8

Browse files
Fix indents issue and add comments for the events serialization test
1 parent 86a0968 commit bf793a8

File tree

1 file changed

+14
-9
lines changed

1 file changed

+14
-9
lines changed

lightning/src/ln/functional_tests.rs

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3916,12 +3916,13 @@ fn test_manager_serialize_deserialize_events() {
39163916
let nodes_0_deserialized: ChannelManager<EnforcingChannelKeys, &test_utils::TestChannelMonitor, &test_utils::TestBroadcaster, &test_utils::TestKeysInterface, &test_utils::TestFeeEstimator>;
39173917
let mut nodes = create_network(2, &node_cfgs, &node_chanmgrs);
39183918

3919-
let channel_value = 100000;
3920-
let push_msat = 10001;
3921-
let a_flags = InitFeatures::known();
3922-
let b_flags = InitFeatures::known();
3923-
let node_a = nodes.pop().unwrap();
3924-
let node_b = nodes.pop().unwrap();
3919+
// Start creating the channel, but stop right before broadcasting the event message FundingBroadcastSafe
3920+
let channel_value = 100000;
3921+
let push_msat = 10001;
3922+
let a_flags = InitFeatures::known();
3923+
let b_flags = InitFeatures::known();
3924+
let node_a = nodes.pop().unwrap();
3925+
let node_b = nodes.pop().unwrap();
39253926
node_a.node.create_channel(node_b.node.get_our_node_id(), channel_value, push_msat, 42, None).unwrap();
39263927
node_b.node.handle_open_channel(&node_a.node.get_our_node_id(), a_flags, &get_event_msg!(node_a, MessageSendEvent::SendOpenChannel, node_b.node.get_our_node_id()));
39273928
node_a.node.handle_accept_channel(&node_b.node.get_our_node_id(), b_flags, &get_event_msg!(node_b, MessageSendEvent::SendAcceptChannel, node_a.node.get_our_node_id()));
@@ -3947,9 +3948,10 @@ fn test_manager_serialize_deserialize_events() {
39473948
added_monitors.clear();
39483949
}
39493950

3950-
nodes.push(node_a);
3951-
nodes.push(node_b);
3951+
nodes.push(node_a);
3952+
nodes.push(node_b);
39523953

3954+
// Start the de/seriailization process mid-channel creation to check that the channel manager will hold onto events that are serialized
39533955
let nodes_0_serialized = nodes[0].node.encode();
39543956
let mut chan_0_monitor_serialized = test_utils::TestVecWriter(Vec::new());
39553957
nodes[0].chan_monitor.simple_monitor.monitors.lock().unwrap().iter().next().unwrap().1.write_for_disk(&mut chan_0_monitor_serialized).unwrap();
@@ -3979,12 +3981,13 @@ fn test_manager_serialize_deserialize_events() {
39793981
};
39803982
nodes_0_deserialized = nodes_0_deserialized_tmp;
39813983
assert!(nodes_0_read.is_empty());
3982-
3984+
39833985
nodes[1].node.peer_disconnected(&nodes[0].node.get_our_node_id(), false);
39843986

39853987
assert!(nodes[0].chan_monitor.add_monitor(chan_0_monitor.get_funding_txo(), chan_0_monitor).is_ok());
39863988
nodes[0].node = &nodes_0_deserialized;
39873989

3990+
// After deserializing, make sure the FundingBroadcastSafe event is still held by the channel manager
39883991
let events_4 = nodes[0].node.get_and_clear_pending_events();
39893992
assert_eq!(events_4.len(), 1);
39903993
match events_4[0] {
@@ -3994,6 +3997,8 @@ fn test_manager_serialize_deserialize_events() {
39943997
},
39953998
_ => panic!("Unexpected event"),
39963999
};
4000+
4001+
// Make sure the channel is functioning as thought the de/serialization never happened
39974002
nodes[0].block_notifier.register_listener(nodes[0].node);
39984003
assert_eq!(nodes[0].node.list_channels().len(), 1);
39994004
check_added_monitors!(nodes[0], 1);

0 commit comments

Comments
 (0)