deckhearth/test/lib/card-import-sync-catalog.test.js
varutasu bec0a7abbd
Prioritize newest missing sets in catalog sync queue. (#49)
The cron was importing oldest MTG sets first and never reaching recent Pokémon releases like Perfect Order; merge MTG and Pokémon by release date descending instead.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-27 21:49:58 -05:00

40 lines
1 KiB
JavaScript

import { describe, expect, it } from 'vitest';
import { buildCatalogSyncQueue } from '../../lib/card-import/sync-catalog.js';
describe('buildCatalogSyncQueue', () => {
it('merges MTG and Pokémon missing sets by release date, newest first', () => {
const queue = buildCatalogSyncQueue(
[
{ code: 'fin', name: 'Final Fantasy', releasedAt: '2026-05-01' },
{ code: 'dsk', name: 'Duskmourn', releasedAt: '2024-09-27' },
],
[
{ id: 'sv10', name: 'Perfect Order', releasedAt: '2026-03-27' },
{ id: 'sv9', name: 'Journey Together', releasedAt: '2025-03-28' },
],
3
);
expect(queue).toEqual([
{
game: 'mtg',
setCode: 'fin',
name: 'Final Fantasy',
releasedAt: '2026-05-01',
},
{
game: 'pokemon',
setCode: 'sv10',
name: 'Perfect Order',
releasedAt: '2026-03-27',
},
{
game: 'pokemon',
setCode: 'sv9',
name: 'Journey Together',
releasedAt: '2025-03-28',
},
]);
});
});