MCPcopy Create free account
hub / github.com/EsperoTech/yaade / doResponseScript

Function doResponseScript

client/src/components/requestPanel/RequestSender.tsx:385–425  ·  view source on GitHub ↗
(
    request: RestRequest,
    reqCollections: Collection[],
    response: RestResponse,
    responseScript: string,
    isCollectionLevel: boolean,
    envName?: string,
    n?: number,
  )

Source from the content-addressed store, hash-verified

383 }
384
385 async function doResponseScript(
386 request: RestRequest,
387 reqCollections: Collection[],
388 response: RestResponse,
389 responseScript: string,
390 isCollectionLevel: boolean,
391 envName?: string,
392 n?: number,
393 ): Promise<JasmineReport | null> {
394 // NOTE: cannot pass state on top level because it does not use most current state
395 const set = (key: string, value: string) =>
396 setEnvVar(
397 reqCollections,
398 dispatchCollections,
399 request.collectionId,
400 key,
401 value,
402 envName,
403 );
404 const get = (key: string): string =>
405 getEnvVar(reqCollections, request.collectionId, key, envName);
406 const exec = async (requestId: number, envName?: string) => {
407 const request = findRequest(reqCollections, requestId);
408 if (!request || request.type !== 'REST') {
409 throw Error(`REST Request with id ${requestId} not found`);
410 }
411 if (!n) n = 0;
412 return await sendRequest(request, reqCollections, envName, n + 1);
413 };
414 return await executeResponseScript(
415 request,
416 response,
417 responseScript,
418 set,
419 get,
420 exec,
421 toast,
422 isCollectionLevel,
423 envName,
424 );
425 }
426
427 async function sendRequestToExtension(
428 request: RestRequest,

Callers 1

sendRequestFunction · 0.85

Calls 1

executeResponseScriptFunction · 0.90

Tested by

no test coverage detected