import { expect, test } from 'bun:test'; import { mkdtemp, rm } from 'node:fs/promises'; import { tmpdir } from 'node:os'; import { join } from 'node:path'; import { ReferenceCompiler, SqliteReferenceRepository } from '../src/lib/server/reference'; test('live readers reject fixture artifacts instead of silently using demo reference data', async () => { const directory = await mkdtemp(join(tmpdir(), 'reference-profile-')); try { expect((await new ReferenceCompiler({ directory, profile: 'fixture' }).compile()).status).toBe('success'); expect(() => new SqliteReferenceRepository(directory, 'production')).toThrow('production profile'); const demo = new SqliteReferenceRepository(directory, 'fixture'); try { expect((await demo.types([34]))[0]?.name).toBe('Tritanium'); } finally { demo.close(); } } finally { await rm(directory, { recursive: true, force: true }); } });