agent-auth-api-parse.test.ts
1 import { describe, expect, it } from 'vitest' 2 3 import { parseAgentAuthActionPayload } from '@/server/api/agents/auth' 4 5 describe('agent auth action parser', () => { 6 it('parses valid jules submit-code payloads', () => { 7 const parsed = parseAgentAuthActionPayload({ 8 action: 'jules.submit_code', 9 sessionId: 'session-1', 10 code: '4/0Aea', 11 }) 12 expect(parsed).toEqual({ 13 action: 'jules.submit_code', 14 sessionId: 'session-1', 15 code: '4/0Aea', 16 }) 17 }) 18 19 it('rejects unknown auth actions', () => { 20 expect(() => 21 parseAgentAuthActionPayload({ 22 action: 'unknown.action', 23 }), 24 ).toThrowError('Unsupported agent auth action.') 25 }) 26 27 it('rejects malformed payloads', () => { 28 expect(() => parseAgentAuthActionPayload(null)).toThrowError( 29 'Invalid agent auth action payload.', 30 ) 31 expect(() => 32 parseAgentAuthActionPayload({ 33 action: 'opencode.login', 34 providerUrl: 123, 35 }), 36 ).toThrowError('Invalid "providerUrl" value.') 37 }) 38 })