Files
ccs/tests/unit/web-server/target-parse-routes.test.ts
T
Tam Nhu Tran 2e8c7a3691 test(web-server): cover profile and variant target parsing
- export route target parsers for direct unit coverage

- verify accepted and rejected target payloads for both route modules
2026-02-25 17:01:06 +07:00

28 lines
1.1 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('')).toBeNull();
expect(parseVariantTarget('factory')).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();
});
});