mirror of
https://github.com/deepseek-ai/deepseek-harness
synced 2026-08-15 21:04:50 +00:00
54 lines
1.6 KiB
TypeScript
54 lines
1.6 KiB
TypeScript
import { join } from 'node:path'
|
|
import { fileURLToPath } from 'node:url'
|
|
import { describe, expect, it } from 'vitest'
|
|
import {
|
|
LOADER_SMOKE_TEST_TIMEOUT_MS,
|
|
runLoaderSmoke,
|
|
} from '@deepseek-ai/dsh-loader-smoke'
|
|
|
|
const fixtureDir = fileURLToPath(new URL(
|
|
'../../../../examples/acp-agent/tests/fixtures/subagent/subagent-codex/',
|
|
import.meta.url,
|
|
))
|
|
const driver = join(fixtureDir, 'driver.ts')
|
|
const configPath = join(fixtureDir, 'cordis.yml')
|
|
const repoTsconfig = fileURLToPath(new URL('../../../../tsconfig.json', import.meta.url))
|
|
|
|
describe('Codex provider public Loader composition', () => {
|
|
it('loads the opt-in package and foreground tool without starting Codex', async () => {
|
|
const { stdout, stderr } = await runLoaderSmoke({
|
|
label: 'subagent-codex Loader composition',
|
|
tempDirPrefix: 'dsh-subagent-codex-loader-',
|
|
binScript: driver,
|
|
libBinScript: driver,
|
|
configPath,
|
|
tsconfigPath: repoTsconfig,
|
|
env: {
|
|
// Loading the optional package must not probe or start a Codex binary.
|
|
PATH: '',
|
|
},
|
|
})
|
|
|
|
expect(stderr).toBe('')
|
|
expect(JSON.parse(stdout)).toEqual({
|
|
providers: ['codex'],
|
|
provider: {
|
|
name: 'codex',
|
|
capabilities: {
|
|
outputSchema: false,
|
|
depthLimit: false,
|
|
toolFilter: false,
|
|
persona: false,
|
|
},
|
|
inheritsParentContext: false,
|
|
},
|
|
tool: {
|
|
name: 'subagent_codex',
|
|
parameterNames: ['description', 'prompt'],
|
|
required: ['description', 'prompt'],
|
|
},
|
|
starts: 0,
|
|
})
|
|
}, LOADER_SMOKE_TEST_TIMEOUT_MS)
|
|
})
|