Skip to content

Commit 99e81e1

Browse files
committed
chore(dmq): apply review comments
1 parent 8bdc5ad commit 99e81e1

File tree

1 file changed

+17
-7
lines changed
  • internal/mithril-dmq/src/consumer/server

1 file changed

+17
-7
lines changed

internal/mithril-dmq/src/consumer/server/queue.rs

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -270,22 +270,32 @@ mod tests {
270270
#[tokio::test]
271271
async fn queue_drains_expired_message() {
272272
let max_size = 3;
273+
let total_expired_messages = 4;
274+
let total_non_expired_messages = 6;
273275
let current_timestamp = 10;
274276
let expires_at_expired = 1;
275277
let expires_at_non_expired = 100;
276278
let queue = create_queue(max_size, current_timestamp);
277-
let mut messages = fake_messages(1..=10, expires_at_expired);
278-
for (index, mut message) in messages.clone().into_iter().enumerate() {
279-
if index >= 5 {
280-
message.msg_payload.expires_at = expires_at_non_expired;
281-
messages[index] = message.clone();
282-
}
279+
let expired_messages = fake_messages(1..=total_expired_messages, expires_at_expired);
280+
let non_expired_messages = fake_messages(
281+
total_expired_messages + 1..=total_non_expired_messages + total_expired_messages,
282+
expires_at_non_expired,
283+
);
284+
for message in expired_messages.clone() {
285+
queue.enqueue(message).await;
286+
}
287+
for message in non_expired_messages.clone() {
283288
queue.enqueue(message).await;
284289
}
285290
let limit = None;
286291

287292
let dequeued_messages = queue.dequeue_blocking(limit).await;
288293

289-
assert_eq!(messages[7..=9].to_vec(), dequeued_messages);
294+
let expected_non_expired_messages_range =
295+
total_non_expired_messages as usize - max_size..total_non_expired_messages as usize;
296+
assert_eq!(
297+
non_expired_messages[expected_non_expired_messages_range].to_vec(),
298+
dequeued_messages
299+
);
290300
}
291301
}

0 commit comments

Comments
 (0)