MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / enqueue_and_poll_ready

Function enqueue_and_poll_ready

nodedb-crdt/src/deferred.rs:193–220  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

191
192 #[test]
193 fn enqueue_and_poll_ready() {
194 let mut queue = DeferredQueue::new(10);
195 let now = 1000;
196
197 // Enqueue an entry ready to retry at now + 500ms
198 queue.enqueue(
199 42,
200 0,
201 0,
202 b"delta".to_vec(),
203 "posts".to_string(),
204 "posts_author_fk".to_string(),
205 0,
206 3,
207 now,
208 500,
209 60,
210 );
211
212 // At time=now, entry is not ready
213 assert!(queue.poll_ready(now).is_empty());
214
215 // At time=now+500, entry is ready
216 let ready = queue.poll_ready(now + 500);
217 assert_eq!(ready.len(), 1);
218 assert_eq!(ready[0].attempt, 0);
219 assert!(queue.is_empty());
220 }
221
222 #[test]
223 fn expire_past_ttl() {

Callers

nothing calls this directly

Calls 4

to_stringMethod · 0.80
poll_readyMethod · 0.80
enqueueMethod · 0.45
to_vecMethod · 0.45

Tested by

no test coverage detected