UNPKG

wgc

Version:

The official CLI tool to manage the GraphQL Federation Platform Cosmo

36 lines 1.42 kB
import { createClient as createConnectClient, createRouterTransport } from '@connectrpc/connect'; import { PlatformService, } from '@wundergraph/cosmo-connect/dist/platform/v1/platform_pb'; import { Command } from 'commander'; import RecomposeCommand from '../../src/commands/graph/common/recompose.js'; export function createMockTransport(response) { return createRouterTransport(({ service }) => { service(PlatformService, { recomposeGraph: () => response, }); }); } export function createTestClient(response) { return { platform: createConnectClient(PlatformService, createMockTransport(response)), }; } export async function runRecompose(response, opts = {}) { var _a; const args = ['recompose', 'mygraph']; if (opts.namespace) { args.push('--namespace', opts.namespace); } if (opts.failOnCompositionError) { args.push('--fail-on-composition-error'); } if (opts.failOnAdmissionWebhookError) { args.push('--fail-on-admission-webhook-error'); } if (opts.suppressWarnings) { args.push('--suppress-warnings'); } const program = new Command(); program.addCommand(RecomposeCommand({ client: createTestClient(response), isMonograph: (_a = opts.isMonograph) !== null && _a !== void 0 ? _a : false })); await program.parseAsync(args, { from: 'user' }); } //# sourceMappingURL=utils.js.map