TypeScript 61.9%
HTML 37.2%
SQL 0.7%
1import { describe, expect, it } from 'vitest';2import { getConnectorMeta } from '@rareindex/connectors';3import { listFixtures, loadFixture, runFixtureSuite } from '@rareindex/connectors/testing';4import createConnector from './index.js';56const connector = createConnector(getConnectorMeta('lorcast'));78describe('lorcast', () => {9 runFixtureSuite(connector, it, expect);1011 it('emits normal + foil variants with TCGplayer market prices', async () => {12 const [name] = listFixtures('lorcast');13 const out = await connector.normalize(loadFixture('lorcast', name!).raw);14 const cats = out.filter((r) => r.kind === 'catalog_item');15 expect(cats.length).toBe(2);16 for (const c of cats) {17 if (c.kind !== 'catalog_item') continue;18 expect(c.attributes.categorySlug).toBe('disney_lorcana');19 expect(c.attributes.setCode).toBe('1');20 expect(c.attributes.set).toBe('The First Chapter');21 expect(c.attributes.number).toMatch(/^\d+$/);22 expect(c.attributes.identifiers.lorcast_id).toMatch(/^crd_/);23 }24 expect(cats.map((c) => c.kind === 'catalog_item' && c.attributes.variant)).toEqual([null, 'Foil']);25 const obs = out.filter((r) => r.kind === 'price_observation');26 expect(obs.length).toBeGreaterThanOrEqual(1);27 for (const o of obs) if (o.kind === 'price_observation') expect(o.currency).toBe('USD');28 });29});30