import { describe, expect, it } from 'vitest'; import meta from './meta.json' with { type: 'json' }; import { localMeta } from '../_lib/local-meta.js'; import { listFixtures, loadFixture, runFixtureSuite } from '@rareindex/connectors/testing'; import createConnector from './index.js'; const connector = createConnector(localMeta(meta)); describe('swu-db', () => { runFixtureSuite(connector, it, expect); it('emits star_wars_tcg catalog items with tcgplayer ids and USD observations', async () => { const [name] = listFixtures('swu-db'); const out = await connector.normalize(loadFixture('swu-db', name!).raw); const cats = out.filter((r) => r.kind === 'catalog_item'); expect(cats.length).toBeGreaterThanOrEqual(1); for (const c of cats) { if (c.kind !== 'catalog_item') continue; expect(c.attributes.categorySlug).toBe('star_wars_tcg'); expect(c.attributes.setCode).toMatch(/^[A-Z]{3}$/); expect(c.attributes.number).toMatch(/^\d+$/); } for (const o of out) if (o.kind === 'price_observation') expect(o.currency).toBe('USD'); }); });