All files / api/src/middlewares evaluations.ts

33.33% Statements 4/12
100% Branches 1/1
100% Functions 1/1
33.33% Lines 4/12

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27                1x 1x 1x   1x                            
import type { EvaluationMethodConnector } from '@api/types/connector';
import type { AppEnv } from '@api/types/hono';
import type { MiddlewareHandler } from 'hono';
import type { Factory } from 'hono/factory';
 
/**
 * Middleware to handle evaluation connectors.
 */
export const evaluationMethodConnectors = (
  factory: Factory<AppEnv>,
  connectors: EvaluationMethodConnector[],
): MiddlewareHandler<AppEnv> =>
  factory.createMiddleware(async (c, next) => {
    // Create connectors map directly from provided connectors
    const connectorsMap: Record<string, EvaluationMethodConnector> = {};
 
    for (const connector of connectors) {
      const details = connector.getDetails();
      connectorsMap[details.method] = connector;
    }
 
    // Set the connectors map on context
    c.set('evaluation_connectors_map', connectorsMap);
 
    await next();
  });