X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=lightning%2Fsrc%2Fln%2Ffunctional_test_utils.rs;h=590f95e22f80852c1371a1dc091ecd2cbc32ac3f;hb=02c57f59404d3f4ae33c7bca0a39c58444d1ad0d;hp=bf1a24d36852b2450af13218ee3025a7b2bf78e8;hpb=a87053a16e7e47b82c3bd34cfe635b1f73cfec92;p=rust-lightning diff --git a/lightning/src/ln/functional_test_utils.rs b/lightning/src/ln/functional_test_utils.rs index bf1a24d3..590f95e2 100644 --- a/lightning/src/ln/functional_test_utils.rs +++ b/lightning/src/ln/functional_test_utils.rs @@ -615,8 +615,22 @@ pub fn create_announced_chan_between_nodes_with_value<'a, 'b, 'c, 'd>(nodes: &'a pub fn update_nodes_with_chan_announce<'a, 'b, 'c, 'd>(nodes: &'a Vec>, a: usize, b: usize, ann: &msgs::ChannelAnnouncement, upd_1: &msgs::ChannelUpdate, upd_2: &msgs::ChannelUpdate) { nodes[a].node.broadcast_node_announcement([0, 0, 0], [0; 32], Vec::new()); let a_events = nodes[a].node.get_and_clear_pending_msg_events(); - assert_eq!(a_events.len(), 1); - let a_node_announcement = match a_events[0] { + assert!(a_events.len() >= 2); + + // ann should be re-generated by broadcast_node_announcement - check that we have it. + let mut found_ann_1 = false; + for event in a_events.iter() { + match event { + MessageSendEvent::BroadcastChannelAnnouncement { ref msg, .. } => { + if msg == ann { found_ann_1 = true; } + }, + MessageSendEvent::BroadcastNodeAnnouncement { .. } => {}, + _ => panic!("Unexpected event {:?}", event), + } + } + assert!(found_ann_1); + + let a_node_announcement = match a_events.last().unwrap() { MessageSendEvent::BroadcastNodeAnnouncement { ref msg } => { (*msg).clone() }, @@ -625,8 +639,22 @@ pub fn update_nodes_with_chan_announce<'a, 'b, 'c, 'd>(nodes: &'a Vec= 2); + + // ann should be re-generated by broadcast_node_announcement - check that we have it. + let mut found_ann_2 = false; + for event in b_events.iter() { + match event { + MessageSendEvent::BroadcastChannelAnnouncement { ref msg, .. } => { + if msg == ann { found_ann_2 = true; } + }, + MessageSendEvent::BroadcastNodeAnnouncement { .. } => {}, + _ => panic!("Unexpected event"), + } + } + assert!(found_ann_2); + + let b_node_announcement = match b_events.last().unwrap() { MessageSendEvent::BroadcastNodeAnnouncement { ref msg } => { (*msg).clone() },