import { describe, expect, it } from 'vitest'; import { buildCodexStartConfig } from './codexStartConfig'; describe('buildCodexStartConfig', () => { const mcpServers = { hapi: { command: 'node', args: ['mcp'] } }; it('applies CLI overrides when permission mode is default', () => { const config = buildCodexStartConfig({ message: 'hello', mode: { permissionMode: 'default' }, first: true, mcpServers, cliOverrides: { sandbox: 'danger-full-access', approvalPolicy: 'never' } }); expect(config.sandbox).toBe('danger-full-access'); expect(config['approval-policy']).toBe('never'); expect(config.config).toEqual({ mcp_servers: mcpServers }); }); it('ignores CLI overrides when permission mode is not default', () => { const config = buildCodexStartConfig({ message: 'hello', mode: { permissionMode: 'yolo' }, first: false, mcpServers, cliOverrides: { sandbox: 'read-only', approvalPolicy: 'never' } }); expect(config.sandbox).toBe('danger-full-access'); expect(config['approval-policy']).toBe('on-failure'); }); it('passes model when provided', () => { const config = buildCodexStartConfig({ message: 'hello', mode: { permissionMode: 'default', model: 'o3' }, first: false, mcpServers }); expect(config.model).toBe('o3'); }); });