MCPcopy Index your code
hub / github.com/code-pushup/cli / filesCoverageToTree

Function filesCoverageToTree

packages/utils/src/lib/coverage-tree.ts:29–55  ·  view source on GitHub ↗
(
  files: FileCoverage[],
  gitRoot: string,
  title?: string,
)

Source from the content-addressed store, hash-verified

27};
28
29export function filesCoverageToTree(
30 files: FileCoverage[],
31 gitRoot: string,
32 title?: string,
33): CoverageTree {
34 const normalizedFiles = files.map(file => ({
35 ...file,
36 path: formatGitPath(file.path, gitRoot),
37 }));
38
39 const filesTree = normalizedFiles.reduce<FileTree>(
40 (acc, coverage) => {
41 const { folders, file } = splitFilePath(coverage.path);
42 return addNode(acc, folders, file, coverage);
43 },
44 { name: '.', children: [] },
45 );
46
47 const coverageTree = calculateTreeCoverage(filesTree);
48 const root = sortCoverageTree(coverageTree);
49
50 return {
51 type: 'coverage',
52 ...(title && { title }),
53 root,
54 };
55}
56
57function addNode(
58 root: FileTree,

Calls 5

formatGitPathFunction · 0.85
splitFilePathFunction · 0.85
addNodeFunction · 0.85
calculateTreeCoverageFunction · 0.85
sortCoverageTreeFunction · 0.85

Tested by

no test coverage detected