mirror of
https://github.com/deepseek-ai/deepseek-harness.git
synced 2026-09-11 04:00:38 +00:00
29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
import { describe, expect, it } from 'vitest'
|
|
import { Context } from '@deepseek-ai/cordis'
|
|
import AgentLoop from '@deepseek-ai/dsh-agent-loop'
|
|
import { renderPrompt } from '@deepseek-ai/dsh-system-prompt'
|
|
import { unsupportedInbox, mountAgentLoopTestDependencies } from '../src/index.ts'
|
|
|
|
describe('dsh-agent-loop-testkit', () => {
|
|
it('rejects mutations through an unsupported Agent stub Inbox', () => {
|
|
const inbox = unsupportedInbox()
|
|
|
|
expect(inbox.nextTurn).toEqual([])
|
|
expect(inbox.nextStep).toEqual([])
|
|
expect(() => { inbox.clear() }).toThrow('this test Agent does not support Inbox mutations')
|
|
})
|
|
|
|
it('mounts a configurable prerequisite spine that can activate AgentLoop', async () => {
|
|
const ctx = new Context()
|
|
await mountAgentLoopTestDependencies(ctx, {
|
|
systemPrompt: { persona: 'Test persona.' },
|
|
tools: { mode: 'native' },
|
|
})
|
|
|
|
expect(renderPrompt(await ctx.systemPrompt.assemble())).toContain('Test persona.')
|
|
await expect(ctx.plugin(AgentLoop, { agents: [] })).resolves.toBeDefined()
|
|
|
|
await ctx.fiber.dispose()
|
|
})
|
|
})
|