Files
ccs/tests/unit/web-server/target-parse-routes.test.ts
T
Tam Nhu Tran f9c1238483 feat(profiles): expose codex runtime across surfaces
- update CLI, API, route, and dashboard surfaces to recognize the Codex runtime target

- normalize persisted codex targets back to claude so runtime-only behavior stays truthful

- add regression coverage for help text, route parsing, and profile storage normalization

Refs #773
2026-03-29 13:14:15 -04:00

30 lines
1.2 KiB
TypeScript

import { describe, expect, it } from 'bun:test';
import { parseTarget as parseProfileTarget } from '../../../src/web-server/routes/profile-routes';
import { parseTarget as parseVariantTarget } from '../../../src/web-server/routes/variant-routes';
describe('route target parsing', () => {
it('accepts valid target values', () => {
expect(parseProfileTarget('claude')).toBe('claude');
expect(parseProfileTarget('DROID')).toBe('droid');
expect(parseVariantTarget(' claude ')).toBe('claude');
expect(parseVariantTarget('droid')).toBe('droid');
});
it('returns null for invalid target values', () => {
expect(parseProfileTarget('glm')).toBeNull();
expect(parseProfileTarget('codex')).toBeNull();
expect(parseProfileTarget('')).toBeNull();
expect(parseVariantTarget('factory')).toBeNull();
expect(parseVariantTarget('codex')).toBeNull();
expect(parseVariantTarget(' ')).toBeNull();
});
it('returns null for non-string values', () => {
expect(parseProfileTarget(undefined)).toBeNull();
expect(parseProfileTarget(null)).toBeNull();
expect(parseVariantTarget(123)).toBeNull();
expect(parseVariantTarget({ target: 'claude' })).toBeNull();
});
});