fix: clarify deferred post listing logs

This commit is contained in:
jjbrunton committed 2026-08-08 22:44:00 +01:00
1 parent f88d4af146
commit 664aa5c098
2 files changed
+37 -2

No files matched your search

+27 -1
View File
@@ -168,7 +168,7 @@ describe('MonitorService', () => {
await expect(monitor.getUnprocessedPosts()).resolves.toEqual([selected]);
expect(logger.logs).toContainEqual(expect.objectContaining({
level: 'info',
message: 'r/sub1 listing: 4 fetched; 3 screened; 0 already processed; 1 already messaged; 1 seller signals; 0 missing gender tag; 0 gender not targeted; 1 eligible (selected); 0 outside recent window; 1 not evaluated after outcome',
message: 'r/sub1 listing: 4 fetched; 3 screened; 0 already processed; 1 already messaged; 1 seller signals; 0 missing gender tag; 0 gender not targeted; 1 eligible (selected); 0 outside recent window; 1 not evaluated after selected recent candidate',
}));
});
@@ -321,6 +321,32 @@ describe('MonitorService', () => {
expect(result[0].id).toBe('t3_old');
});
it('labels deferred listing posts as older than the eligible fallback', async () => {
const now = Math.floor(Date.now() / 1000);
const fallback: RedditPost = {
id: 't3_fallback', subreddit: 'sub1', author: 'u_fallback', title: 'Fallback',
url: 'http://example.com/fallback.jpg', permalink: '/r/sub1/fallback', thumbnail: '',
is_self: false, created_utc: now - 7200, over_18: false, spoiler: false,
};
const older: RedditPost = { ...fallback, id: 't3_older', author: 'u_older', created_utc: now - 10_800 };
const config = getTestConfig({
reddit: {
subreddits: [{ name: 'sub1', type: 'image' }],
prioritizeRecentPosts: true,
recentWindowMinutes: 60,
},
});
monitor = new MonitorService(
createMockRedditApi([fallback, older]), createMockPostsRepo(), createMockMessagesRepo(), config, logger, 0,
);
await monitor.getUnprocessedPosts();
expect(logger.logs).toContainEqual(expect.objectContaining({
message: expect.stringContaining('1 older than eligible fallback'),
}));
});
it('returns empty array when no subreddits have valid posts', async () => {
const redditApi = createMockRedditApi([]);
const postsRepo = createMockPostsRepo();