@@ -237,7 +237,7 @@ describe('validate', () => {
237237
238238 describe ( 'validateAddGatewayTargetOptions' , ( ) => {
239239 // AC15: Required fields validated
240- it ( 'returns error for missing required fields' , ( ) => {
240+ it ( 'returns error for missing required fields' , async ( ) => {
241241 const requiredFields : { field : keyof AddGatewayTargetOptions ; error : string } [ ] = [
242242 { field : 'name' , error : '--name is required' } ,
243243 { field : 'language' , error : '--language is required' } ,
@@ -246,44 +246,43 @@ describe('validate', () => {
246246
247247 for ( const { field, error } of requiredFields ) {
248248 const opts = { ...validGatewayTargetOptionsMcpRuntime , [ field ] : undefined } ;
249- const result = validateAddGatewayTargetOptions ( opts ) ;
249+ const result = await validateAddGatewayTargetOptions ( opts ) ;
250250 expect ( result . valid , `Should fail for missing ${ String ( field ) } ` ) . toBe ( false ) ;
251251 expect ( result . error ) . toBe ( error ) ;
252252 }
253253 } ) ;
254254
255255 // AC16: Invalid values rejected
256- it ( 'returns error for invalid values' , ( ) => {
257- let result = validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , language : 'Java' as any } ) ;
256+ it ( 'returns error for invalid values' , async ( ) => {
257+ let result = await validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , language : 'Java' as any } ) ;
258258 expect ( result . valid ) . toBe ( false ) ;
259259 expect ( result . error ?. includes ( 'Invalid language' ) ) . toBeTruthy ( ) ;
260260
261- result = validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , exposure : 'invalid' as any } ) ;
261+ result = await validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , exposure : 'invalid' as any } ) ;
262262 expect ( result . valid ) . toBe ( false ) ;
263263 expect ( result . error ?. includes ( 'Invalid exposure' ) ) . toBeTruthy ( ) ;
264264 } ) ;
265265
266266 // AC17: mcp-runtime exposure requires agents
267- it ( 'returns error for mcp-runtime without agents' , ( ) => {
268- let result = validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , agents : undefined } ) ;
267+ it ( 'returns error for mcp-runtime without agents' , async ( ) => {
268+ let result = await validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , agents : undefined } ) ;
269269 expect ( result . valid ) . toBe ( false ) ;
270270 expect ( result . error ) . toBe ( '--agents is required for mcp-runtime exposure' ) ;
271271
272- result = validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , agents : ',,,' } ) ;
272+ result = await validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsMcpRuntime , agents : ',,,' } ) ;
273273 expect ( result . valid ) . toBe ( false ) ;
274274 expect ( result . error ) . toBe ( 'At least one agent is required' ) ;
275275 } ) ;
276276
277- // AC18: behind-gateway exposure is disabled (coming soon)
278- it ( 'returns coming soon error for behind-gateway exposure' , ( ) => {
279- const result = validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsBehindGateway } ) ;
280- expect ( result . valid ) . toBe ( false ) ;
281- expect ( result . error ) . toContain ( 'coming soon' ) ;
277+ // AC18: behind-gateway exposure is enabled
278+ it ( 'passes for valid behind-gateway options' , async ( ) => {
279+ const result = await validateAddGatewayTargetOptions ( { ...validGatewayTargetOptionsBehindGateway } ) ;
280+ expect ( result . valid ) . toBe ( true ) ;
282281 } ) ;
283282
284283 // AC19: Valid options pass
285- it ( 'passes for valid mcp-runtime options' , ( ) => {
286- expect ( validateAddGatewayTargetOptions ( validGatewayTargetOptionsMcpRuntime ) ) . toEqual ( { valid : true } ) ;
284+ it ( 'passes for valid mcp-runtime options' , async ( ) => {
285+ expect ( await validateAddGatewayTargetOptions ( validGatewayTargetOptionsMcpRuntime ) ) . toEqual ( { valid : true } ) ;
287286 } ) ;
288287 } ) ;
289288
0 commit comments