Skip to content

Commit 3260716

Browse files
committed
Filter on date
1 parent 418256c commit 3260716

2 files changed

Lines changed: 13 additions & 1 deletion

File tree

internal/datastore/src/__test__/letter-queue-repository.test.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,16 @@ describe("LetterQueueRepository", () => {
128128
expect(letters).toHaveLength(0);
129129
});
130130

131+
it("filters by queueTimestamp", async () => {
132+
jest.useFakeTimers().setSystemTime(new Date("2026-03-04T13:25:45.000Z"));
133+
await letterQueueRepository.putLetter(createLetter());
134+
jest.useFakeTimers().setSystemTime(new Date("2026-03-04T13:23:45.000Z"));
135+
136+
const letters = await letterQueueRepository.getLetters("supplier1", 1);
137+
138+
expect(letters).toHaveLength(0);
139+
});
140+
131141
it("returns letters in timestamp order", async () => {
132142
await letterQueueRepository.putLetter(createLetter("first-letter"));
133143
await letterQueueRepository.putLetter(createLetter("second-letter"));

internal/datastore/src/letter-queue-repository.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,9 +85,11 @@ export default class LetterQueueRepository {
8585
new QueryCommand({
8686
TableName: this.config.letterQueueTableName,
8787
IndexName: "queueTimestamp-index",
88-
KeyConditionExpression: "supplierId = :supplierId",
88+
KeyConditionExpression:
89+
"supplierId = :supplierId and queueTimestamp < :now",
8990
ExpressionAttributeValues: {
9091
":supplierId": supplierId,
92+
":now": new Date().toISOString(),
9193
},
9294
Limit: limit,
9395
}),

0 commit comments

Comments
 (0)