test(managed): verify timeout budget fairness
This commit is contained in:
5 files changed
+457
-4
No files matched your search
@@ -414,7 +414,9 @@ impl SessionMachine {
|
||||
&mut self,
|
||||
now: Instant,
|
||||
) -> Result<Vec<ClientEvent>, ClientError> {
|
||||
Ok(self.poll_timeouts_bounded_at(now, usize::MAX)?.events)
|
||||
let batch = self.poll_timeouts_bounded_at(now, usize::MAX)?;
|
||||
debug_assert!(!batch.more_due);
|
||||
Ok(batch.events)
|
||||
}
|
||||
|
||||
pub(crate) fn poll_timeouts_bounded_at(
|
||||
@@ -1036,6 +1038,18 @@ impl SessionMachine {
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(all(test, feature = "tokio"))]
|
||||
impl SessionMachine {
|
||||
pub(crate) fn replace_pending_for_test(&mut self, probe: PendingProbe) {
|
||||
let session = self
|
||||
.open_session_mut()
|
||||
.expect("test pending probes require an open session");
|
||||
session.pending.remove(probe.wire_seq);
|
||||
session.pending.preflight_insert(probe.wire_seq).unwrap();
|
||||
session.pending.commit_insert(probe);
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
|
||||
Reference in new issue
Block a user