core/adapters/tool.madge.adapter.ts
core/adapters/tool.madge.adapter.ts is a file in GovLab Quality. 17 lines of code and 3 definitions.
import type { AdvisoryToolSpec, RunnerContext } from "#types/tool.types";
import type { RunResult } from "#types/finding.types";
import { defineTool } from "#core/registries/tool.registry";
import { parseMadgeOutput } from "#core/parsers/tool.madge.parser";
import { runAdvisory } from "#core/adapters/tool.adapter";
const TOOL = "madge";
const MADGE_SPEC: AdvisoryToolSpec = {
argsFor: (context) => ["--circular", "--json", ...context.paths],
cwdFor: (context) => context.root,
parse: parseMadgeOutput,
statusOk: () => true,
tool: TOOL,
};
const runMadge = function runMadge(context: RunnerContext): RunResult {
return runAdvisory(MADGE_SPEC, context);
};
defineTool({ ecosystems: ["javascript", "typescript"], run: runMadge, tool: TOOL });