import { describe, expect, test } from 'bun:test'; import { checkContractVersion } from './contract-version'; describe('checkContractVersion', () => { test('ok when manifest declares the latest supported contract', () => { const r = checkContractVersion({ celilo_contract: '1.0' }); expect(r.status).toBe('ok'); expect(r.message).toContain('latest'); }); test('fail when celilo_contract field is missing entirely', () => { const r = checkContractVersion({}); expect(r.status).toBe('fail'); expect(r.message).toContain('missing'); expect(r.suggestedValue).toBe('1.0'); }); test('fail when celilo_contract claims an unknown version', () => { const r = checkContractVersion({ celilo_contract: '99.0' }); expect(r.status).toBe('fail'); expect(r.message).toContain('unknown'); expect(r.suggestedValue).toBe('1.0'); }); });