Skip to content

Commit 8529e1d

Browse files
refactor preflight_probes_yield_event_and_skip
1 parent 8f03a7e commit 8529e1d

File tree

1 file changed

+5
-56
lines changed

1 file changed

+5
-56
lines changed

lightning/src/ln/payment_tests.rs

Lines changed: 5 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -1325,7 +1325,7 @@ fn preflight_probes_yield_event_and_skip() {
13251325
// \ /
13261326
// (70k:0)- N3 -(1M:0)
13271327
//
1328-
let first_chan_update = create_announced_chan_between_nodes_with_value(&nodes, 0, 1, 100_000, 0).0;
1328+
create_announced_chan_between_nodes_with_value(&nodes, 0, 1, 100_000, 0);
13291329
create_announced_chan_between_nodes_with_value(&nodes, 1, 2, 30_000, 0);
13301330
create_announced_chan_between_nodes_with_value(&nodes, 1, 3, 70_000, 0);
13311331
create_announced_chan_between_nodes_with_value(&nodes, 2, 4, 1_000_000, 0);
@@ -1340,65 +1340,14 @@ fn preflight_probes_yield_event_and_skip() {
13401340
let route_params = RouteParameters { payment_params, final_value_msat: 80_000_000 };
13411341
let res = nodes[0].node.send_preflight_probes(route_params, None).unwrap();
13421342

1343+
let expected_route : &[&[&Node]] = &[&[&nodes[1], &nodes[2], &nodes[4]]];
1344+
13431345
// We check that only one probe was sent, the other one was skipped due to limited liquidity.
13441346
assert_eq!(res.len(), 1);
1345-
let log_msg = format!("Skipped sending payment probe to avoid putting channel {} under the liquidity limit.",
1346-
first_chan_update.contents.short_channel_id);
1347-
node_cfgs[0].logger.assert_log_contains("lightning::ln::channelmanager", &log_msg, 1);
1348-
1349-
let (payment_hash, payment_id) = res.first().unwrap();
1350-
1351-
// node[0] -- update_add_htlcs -> node[1]
1352-
check_added_monitors!(nodes[0], 1);
1353-
let probe_event = SendEvent::from_node(&nodes[0]);
1354-
nodes[1].node.handle_update_add_htlc(&nodes[0].node.get_our_node_id(), &probe_event.msgs[0]);
1355-
check_added_monitors!(nodes[1], 0);
1356-
commitment_signed_dance!(nodes[1], nodes[0], probe_event.commitment_msg, false);
1357-
expect_pending_htlcs_forwardable!(nodes[1]);
1358-
1359-
// node[1] -- update_add_htlcs -> node[2]
1360-
check_added_monitors!(nodes[1], 1);
1361-
let probe_event = SendEvent::from_node(&nodes[1]);
1362-
nodes[2].node.handle_update_add_htlc(&nodes[1].node.get_our_node_id(), &probe_event.msgs[0]);
1363-
check_added_monitors!(nodes[2], 0);
1364-
commitment_signed_dance!(nodes[2], nodes[1], probe_event.commitment_msg, false);
1365-
expect_pending_htlcs_forwardable!(nodes[2]);
1366-
1367-
// node[2] -- update_add_htlcs -> node[4]
1368-
check_added_monitors!(nodes[2], 1);
1369-
let probe_event = SendEvent::from_node(&nodes[2]);
1370-
nodes[4].node.handle_update_add_htlc(&nodes[2].node.get_our_node_id(), &probe_event.msgs[0]);
1371-
check_added_monitors!(nodes[4], 0);
1372-
commitment_signed_dance!(nodes[4], nodes[2], probe_event.commitment_msg, true, true);
1373-
1374-
// node[2] <- update_fail_htlcs -- node[4]
1375-
let updates = get_htlc_update_msgs!(nodes[4], nodes[2].node.get_our_node_id());
1376-
nodes[2].node.handle_update_fail_htlc(&nodes[4].node.get_our_node_id(), &updates.update_fail_htlcs[0]);
1377-
check_added_monitors!(nodes[2], 0);
1378-
commitment_signed_dance!(nodes[2], nodes[4], updates.commitment_signed, true);
13791347

1380-
// node[1] <- update_fail_htlcs -- node[2]
1381-
let updates = get_htlc_update_msgs!(nodes[2], nodes[1].node.get_our_node_id());
1382-
nodes[1].node.handle_update_fail_htlc(&nodes[2].node.get_our_node_id(), &updates.update_fail_htlcs[0]);
1383-
check_added_monitors!(nodes[1], 0);
1384-
commitment_signed_dance!(nodes[1], nodes[2], updates.commitment_signed, true);
1348+
pass_probe_along_route(&nodes[0], expected_route);
13851349

1386-
// node[0] <- update_fail_htlcs -- node[1]
1387-
let updates = get_htlc_update_msgs!(nodes[1], nodes[0].node.get_our_node_id());
1388-
nodes[0].node.handle_update_fail_htlc(&nodes[1].node.get_our_node_id(), &updates.update_fail_htlcs[0]);
1389-
check_added_monitors!(nodes[0], 0);
1390-
commitment_signed_dance!(nodes[0], nodes[1], updates.commitment_signed, false);
1391-
1392-
let mut events = nodes[0].node.get_and_clear_pending_events();
1393-
assert_eq!(events.len(), 1);
1394-
match events.drain(..).next().unwrap() {
1395-
crate::events::Event::ProbeSuccessful { payment_id: ev_pid, payment_hash: ev_ph, .. } => {
1396-
assert_eq!(*payment_id, ev_pid);
1397-
assert_eq!(*payment_hash, ev_ph);
1398-
},
1399-
_ => panic!(),
1400-
};
1401-
assert!(!nodes[0].node.has_pending_payments());
1350+
expect_probe_successful_events(&nodes[0], res);
14021351
}
14031352

14041353
#[test]

0 commit comments

Comments
 (0)