use super::*;
#[test]
fn accept_budget_reached_trips_at_each_bound() {
assert!(!accept_budget_reached(0, Duration::ZERO));
assert!(!accept_budget_reached(
MAX_DHT_REQUESTS_PER_CONN - 1,
Duration::from_secs(1)
));
assert!(accept_budget_reached(
MAX_DHT_REQUESTS_PER_CONN,
Duration::ZERO
));
assert!(accept_budget_reached(u32::MAX, Duration::ZERO));
assert!(accept_budget_reached(0, MAX_DHT_CONN_AGE));
assert!(accept_budget_reached(
0,
MAX_DHT_CONN_AGE + Duration::from_secs(1)
));
}
#[test]
fn budget_bounds_are_sane() {
let count_cap = MAX_DHT_REQUESTS_PER_CONN;
let age = MAX_DHT_CONN_AGE;
assert!(count_cap > 0, "a zero count cap serves nothing");
assert!(
count_cap < u32::MAX,
"an unbounded count cap reopens the dispatch-permit-pinning hole (#845)"
);
assert!(
age > Duration::ZERO,
"a zero age deadline would close every connection immediately"
);
}