Skip to content

Commit a0bc4f7

Browse files
committed
update test
1 parent 0511571 commit a0bc4f7

File tree

1 file changed

+32
-20
lines changed

1 file changed

+32
-20
lines changed

lightning/src/routing/scoring.rs

Lines changed: 32 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3890,35 +3890,47 @@ mod tests {
38903890

38913891
let mut combined_scorer = CombinedScorer::new(scorer);
38923892

3893+
// Verify that the combined_scorer has the correct liquidity range after a failed 600 msat payment.
3894+
let liquidity_range = combined_scorer.scorer.estimated_channel_liquidity_range(42, &target_node_id());
3895+
assert_eq!(liquidity_range.unwrap(), (0, 600));
3896+
38933897
let source = source_node_id();
38943898
let usage = ChannelUsage {
38953899
amount_msat: 750,
38963900
inflight_htlc_msat: 0,
38973901
effective_capacity: EffectiveCapacity::Total { capacity_msat: 1_000, htlc_maximum_msat: 1_000 },
38983902
};
3899-
let network_graph = network_graph.read_only();
3900-
let channel = network_graph.channel(42).unwrap();
3901-
let (info, _) = channel.as_directed_from(&source).unwrap();
3902-
let candidate = CandidateRouteHop::PublicHop(PublicHopCandidate {
3903-
info,
3904-
short_channel_id: 42,
3905-
});
3906-
let penalty = combined_scorer.channel_penalty_msat(&candidate, usage, &params);
39073903

3908-
let mut external_liquidity = ChannelLiquidity::new(Duration::ZERO);
3909-
let logger_rc = Rc::new(&logger); // Why necessary and not above for the network graph?
3910-
external_liquidity.as_directed_mut(&source_node_id(), &target_node_id(), 1_000).
3911-
successful(1000, Duration::ZERO, format_args!("test channel"), logger_rc.as_ref());
3912-
3913-
let mut external_scores = ChannelLiquidities::new();
3914-
3915-
external_scores.insert(42, external_liquidity);
3916-
combined_scorer.merge(external_scores, Duration::ZERO);
3904+
{
3905+
let network_graph = network_graph.read_only();
3906+
let channel = network_graph.channel(42).unwrap();
3907+
let (info, _) = channel.as_directed_from(&source).unwrap();
3908+
let candidate = CandidateRouteHop::PublicHop(PublicHopCandidate {
3909+
info,
3910+
short_channel_id: 42,
3911+
});
3912+
3913+
let penalty = combined_scorer.channel_penalty_msat(&candidate, usage, &params);
3914+
3915+
let mut external_liquidity = ChannelLiquidity::new(Duration::ZERO);
3916+
let logger_rc = Rc::new(&logger); // Why necessary and not above for the network graph?
3917+
external_liquidity.as_directed_mut(&source_node_id(), &target_node_id(), 1_000).
3918+
successful(1000, Duration::ZERO, format_args!("test channel"), logger_rc.as_ref());
39173919

3918-
let penalty_after_merge = combined_scorer.channel_penalty_msat(&candidate, usage, &params);
3920+
let mut external_scores = ChannelLiquidities::new();
39193921

3920-
// Since the external source observed a successful payment, the penalty should be lower after the merge.
3921-
assert!(penalty_after_merge < penalty);
3922+
external_scores.insert(42, external_liquidity);
3923+
combined_scorer.merge(external_scores, Duration::ZERO);
3924+
3925+
let penalty_after_merge = combined_scorer.channel_penalty_msat(&candidate, usage, &params);
3926+
3927+
// Since the external source observed a successful payment, the penalty should be lower after the merge.
3928+
assert!(penalty_after_merge < penalty);
3929+
}
3930+
3931+
// Verify that after the merge with a successful payment, the liquidity range is increased.
3932+
let liquidity_range = combined_scorer.scorer.estimated_channel_liquidity_range(42, &target_node_id());
3933+
assert_eq!(liquidity_range.unwrap(), (0, 300));
39223934
}
39233935
}
39243936

0 commit comments

Comments
 (0)