test(gateway): exercise interaction denial routes
All checks were successful
ci/woodpecker/pr/ci Pipeline was successful

This commit is contained in:
Jarvis
2026-07-13 14:36:28 -05:00
parent 32d431b42b
commit 658ad2887f
6 changed files with 48 additions and 16 deletions

View File

@@ -11,7 +11,7 @@ const base = { agentName: 'Nova', correlationId: 'corr-1', sessionId: 'session-1
afterEach(() => vi.unstubAllGlobals());
/** The TUI must preserve gateway denial type/status rather than treating it as success. */
/** Unit coverage: the TUI preserves a non-success gateway response in its CLI error. */
describe('interaction gateway error mapping', (): void => {
it.each([
{
@@ -23,7 +23,7 @@ describe('interaction gateway error mapping', (): void => {
},
{
name: 'send invalid request',
response: { status: 400, message: 'Content and idempotency key are required' },
response: { status: 403, message: 'Content and idempotency key are required' },
invoke: (): Promise<unknown> =>
sendInteractionMessage(gateway, cookie, {
...base,
@@ -31,7 +31,7 @@ describe('interaction gateway error mapping', (): void => {
idempotencyKey: 'message-1',
}),
expected:
'Failed to send interaction message (400): {"message":"Content and idempotency key are required"}',
'Failed to send interaction message (403): {"message":"Content and idempotency key are required"}',
},
{
name: 'stop forbidden',