59 lines
1.5 KiB
TypeScript
59 lines
1.5 KiB
TypeScript
import { expect, test } from 'vitest';
|
|
|
|
import {
|
|
CREATION_AGENT_QUICK_FILL_MESSAGE,
|
|
buildCreationAgentChatMessage,
|
|
createCreationAgentChatQuickActions,
|
|
resolveCreationAgentQuickActionMessage,
|
|
} from './creationAgentChat';
|
|
|
|
test('creation agent chat exposes the unified summary and quick fill actions', () => {
|
|
expect(createCreationAgentChatQuickActions()).toEqual([
|
|
{
|
|
key: 'summarize',
|
|
label: '总结当前设定',
|
|
},
|
|
{
|
|
key: 'quickFill',
|
|
label: '补充剩余设定',
|
|
minTurn: 2,
|
|
},
|
|
]);
|
|
});
|
|
|
|
test('creation agent chat resolves quick actions through one message contract', () => {
|
|
expect(
|
|
resolveCreationAgentQuickActionMessage('quickFill', '请总结当前设定。'),
|
|
).toEqual({
|
|
text: CREATION_AGENT_QUICK_FILL_MESSAGE,
|
|
quickFillRequested: true,
|
|
});
|
|
|
|
expect(
|
|
resolveCreationAgentQuickActionMessage('summarize', '请总结当前设定。'),
|
|
).toEqual({
|
|
text: '请总结当前设定。',
|
|
quickFillRequested: false,
|
|
});
|
|
});
|
|
|
|
test('creation agent chat builds shared message payload with genre extras', () => {
|
|
expect(
|
|
buildCreationAgentChatMessage({
|
|
clientMessageId: 'message-1',
|
|
text: '请补充剩余设定。',
|
|
quickFillRequested: true,
|
|
extraPayload: {
|
|
focusCardId: null,
|
|
selectedCardIds: [],
|
|
},
|
|
}),
|
|
).toEqual({
|
|
clientMessageId: 'message-1',
|
|
text: '请补充剩余设定。',
|
|
quickFillRequested: true,
|
|
focusCardId: null,
|
|
selectedCardIds: [],
|
|
});
|
|
});
|