testContext.ts•1.23 kB
/**
* @fileoverview Test context factory for creating RequestContext and SdkContext instances.
* @module tests/mcp-server/tools/definitions/helpers/testContext
*/
import { requestContextService } from '@/utils/index.js';
import type { RequestContext } from '@/utils/index.js';
import type { SdkContext } from '@/mcp-server/tools/utils/toolDefinition.js';
/**
* Creates a test RequestContext with optional overrides.
*/
export function createTestContext(
overrides: Partial<RequestContext> = {},
): RequestContext {
return requestContextService.createRequestContext({
operation: overrides.operation || 'test-operation',
additionalContext: overrides,
});
}
/**
* Creates a test SdkContext for MCP protocol operations.
*/
export function createTestSdkContext(
overrides: Partial<SdkContext> = {},
): SdkContext {
return {
sessionId: 'test-session-id',
...overrides,
} as SdkContext;
}
/**
* Creates a RequestContext with a specific tenantId for multi-tenancy tests.
*/
export function createTestContextWithTenant(
tenantId: string,
overrides: Partial<RequestContext> = {},
): RequestContext {
const context = createTestContext(overrides);
return {
...context,
tenantId,
};
}