@@ -3585,7 +3585,9 @@ fn test_dup_events_on_peer_disconnect() {
35853585 nodes[0].node.peer_disconnected(&nodes[1].node.get_our_node_id());
35863586 nodes[1].node.peer_disconnected(&nodes[0].node.get_our_node_id());
35873587
3588- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (1, 0), (0, 0), (0, 0), (0, 0), (false, false));
3588+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3589+ reconnect_args.pending_htlc_claims.0 = 1;
3590+ reconnect_nodes(reconnect_args);
35893591 expect_payment_path_successful!(nodes[0]);
35903592}
35913593
@@ -3642,7 +3644,9 @@ fn test_simple_peer_disconnect() {
36423644
36433645 nodes[0].node.peer_disconnected(&nodes[1].node.get_our_node_id());
36443646 nodes[1].node.peer_disconnected(&nodes[0].node.get_our_node_id());
3645- reconnect_nodes(&nodes[0], &nodes[1], (true, true), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, false));
3647+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3648+ reconnect_args.send_channel_ready = (true, true);
3649+ reconnect_nodes(reconnect_args);
36463650
36473651 let payment_preimage_1 = route_payment(&nodes[0], &vec!(&nodes[1], &nodes[2])[..], 1000000).0;
36483652 let payment_hash_2 = route_payment(&nodes[0], &vec!(&nodes[1], &nodes[2])[..], 1000000).1;
@@ -3651,7 +3655,7 @@ fn test_simple_peer_disconnect() {
36513655
36523656 nodes[0].node.peer_disconnected(&nodes[1].node.get_our_node_id());
36533657 nodes[1].node.peer_disconnected(&nodes[0].node.get_our_node_id());
3654- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, false ));
3658+ reconnect_nodes(ReconnectArgs::new( &nodes[0], &nodes[1]));
36553659
36563660 let (payment_preimage_3, payment_hash_3, _) = route_payment(&nodes[0], &vec!(&nodes[1], &nodes[2])[..], 1000000);
36573661 let payment_preimage_4 = route_payment(&nodes[0], &vec!(&nodes[1], &nodes[2])[..], 1000000).0;
@@ -3664,7 +3668,10 @@ fn test_simple_peer_disconnect() {
36643668 claim_payment_along_route(&nodes[0], &[&[&nodes[1], &nodes[2]]], true, payment_preimage_3);
36653669 fail_payment_along_route(&nodes[0], &[&[&nodes[1], &nodes[2]]], true, payment_hash_5);
36663670
3667- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (1, 0), (1, 0), (false, false));
3671+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3672+ reconnect_args.pending_cell_htlc_fails.0 = 1;
3673+ reconnect_args.pending_cell_htlc_claims.0 = 1;
3674+ reconnect_nodes(reconnect_args);
36683675 {
36693676 let events = nodes[0].node.get_and_clear_pending_events();
36703677 assert_eq!(events.len(), 4);
@@ -3776,19 +3783,29 @@ fn do_test_drop_messages_peer_disconnect(messages_delivered: u8, simulate_broken
37763783 }
37773784 // Even if the channel_ready messages get exchanged, as long as nothing further was
37783785 // received on either side, both sides will need to resend them.
3779- reconnect_nodes(&nodes[0], &nodes[1], (true, true), (0, 1), (0, 0), (0, 0), (0, 0), (0, 0), (false, false));
3786+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3787+ reconnect_args.send_channel_ready = (true, true);
3788+ reconnect_args.pending_htlc_adds.1 = 1;
3789+ reconnect_nodes(reconnect_args);
37803790 } else if messages_delivered == 3 {
37813791 // nodes[0] still wants its RAA + commitment_signed
3782- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (-1, 0), (0, 0), (0, 0), (0, 0), (0, 0), (true, false));
3792+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3793+ reconnect_args.pending_htlc_adds.0 = -1;
3794+ reconnect_args.pending_raa.0 = true;
3795+ reconnect_nodes(reconnect_args);
37833796 } else if messages_delivered == 4 {
37843797 // nodes[0] still wants its commitment_signed
3785- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (-1, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, false));
3798+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3799+ reconnect_args.pending_htlc_adds.0 = -1;
3800+ reconnect_nodes(reconnect_args);
37863801 } else if messages_delivered == 5 {
37873802 // nodes[1] still wants its final RAA
3788- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, true));
3803+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3804+ reconnect_args.pending_raa.1 = true;
3805+ reconnect_nodes(reconnect_args);
37893806 } else if messages_delivered == 6 {
37903807 // Everything was delivered...
3791- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, false ));
3808+ reconnect_nodes(ReconnectArgs::new( &nodes[0], &nodes[1]));
37923809 }
37933810
37943811 let events_1 = nodes[1].node.get_and_clear_pending_events();
@@ -3812,7 +3829,7 @@ fn do_test_drop_messages_peer_disconnect(messages_delivered: u8, simulate_broken
38123829
38133830 nodes[0].node.peer_disconnected(&nodes[1].node.get_our_node_id());
38143831 nodes[1].node.peer_disconnected(&nodes[0].node.get_our_node_id());
3815- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, false ));
3832+ reconnect_nodes(ReconnectArgs::new( &nodes[0], &nodes[1]));
38163833
38173834 nodes[1].node.process_pending_htlc_forwards();
38183835
@@ -3896,24 +3913,33 @@ fn do_test_drop_messages_peer_disconnect(messages_delivered: u8, simulate_broken
38963913 nodes[0].node.peer_disconnected(&nodes[1].node.get_our_node_id());
38973914 nodes[1].node.peer_disconnected(&nodes[0].node.get_our_node_id());
38983915 if messages_delivered < 2 {
3899- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (1, 0), (0, 0), (0, 0), (0, 0), (false, false));
3916+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3917+ reconnect_args.pending_htlc_claims.0 = 1;
3918+ reconnect_nodes(reconnect_args);
39003919 if messages_delivered < 1 {
39013920 expect_payment_sent!(nodes[0], payment_preimage_1);
39023921 } else {
39033922 assert!(nodes[0].node.get_and_clear_pending_msg_events().is_empty());
39043923 }
39053924 } else if messages_delivered == 2 {
39063925 // nodes[0] still wants its RAA + commitment_signed
3907- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, -1), (0, 0), (0, 0), (0, 0), (0, 0), (false, true));
3926+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3927+ reconnect_args.pending_htlc_adds.1 = -1;
3928+ reconnect_args.pending_raa.1 = true;
3929+ reconnect_nodes(reconnect_args);
39083930 } else if messages_delivered == 3 {
39093931 // nodes[0] still wants its commitment_signed
3910- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, -1), (0, 0), (0, 0), (0, 0), (0, 0), (false, false));
3932+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3933+ reconnect_args.pending_htlc_adds.1 = -1;
3934+ reconnect_nodes(reconnect_args);
39113935 } else if messages_delivered == 4 {
39123936 // nodes[1] still wants its final RAA
3913- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (true, false));
3937+ let mut reconnect_args = ReconnectArgs::new(&nodes[0], &nodes[1]);
3938+ reconnect_args.pending_raa.0 = true;
3939+ reconnect_nodes(reconnect_args);
39143940 } else if messages_delivered == 5 {
39153941 // Everything was delivered...
3916- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, false ));
3942+ reconnect_nodes(ReconnectArgs::new( &nodes[0], &nodes[1]));
39173943 }
39183944
39193945 if messages_delivered == 1 || messages_delivered == 2 {
@@ -3923,7 +3949,7 @@ fn do_test_drop_messages_peer_disconnect(messages_delivered: u8, simulate_broken
39233949 nodes[0].node.peer_disconnected(&nodes[1].node.get_our_node_id());
39243950 nodes[1].node.peer_disconnected(&nodes[0].node.get_our_node_id());
39253951 }
3926- reconnect_nodes(&nodes[0], &nodes[1], (false, false), (0, 0), (0, 0), (0, 0), (0, 0), (0, 0), (false, false ));
3952+ reconnect_nodes(ReconnectArgs::new( &nodes[0], &nodes[1]));
39273953
39283954 if messages_delivered > 2 {
39293955 expect_payment_path_successful!(nodes[0]);
0 commit comments