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

Function processAuditsAndGroups

packages/plugin-axe/src/lib/meta/processing.ts:20–56  ·  view source on GitHub ↗
(
  urls: string[],
  preset: AxePreset,
)

Source from the content-addressed store, hash-verified

18
19/** Loads and processes Axe rules into audits and groups, expanding for multiple URLs if needed. */
20export function processAuditsAndGroups(
21 urls: string[],
22 preset: AxePreset,
23): {
24 audits: Audit[];
25 groups: Group[];
26 ruleIds: string[];
27} {
28 const rules = loadAxeRules(preset);
29 const ruleIds = rules.map(({ ruleId }) => ruleId);
30 const audits = transformRulesToAudits(rules);
31 const groups = transformRulesToGroups(rules);
32
33 logger.info(
34 formatMetaLog(
35 `Loaded ${pluralizeToken('Axe rule', rules.length)} for ${ansis.bold(AXE_PRESET_NAMES[preset])} preset, mapped to audits`,
36 ),
37 );
38 logger.info(
39 formatMetaLog(
40 `Created ${pluralizeToken('group', groups.length)} from Axe categories`,
41 ),
42 );
43
44 if (!shouldExpandForUrls(urls.length)) {
45 return { audits, groups, ruleIds };
46 }
47
48 const expandedAudits = expandAuditsForUrls(audits, urls);
49 const expandedGroups = expandGroupsForUrls(groups, urls);
50 logger.info(
51 formatMetaLog(
52 `Expanded audits (${audits.length} → ${expandedAudits.length}) and groups (${groups.length} → ${expandedGroups.length}) for ${pluralizeToken('URL', urls.length)}`,
53 ),
54 );
55 return { audits: expandedAudits, groups: expandedGroups, ruleIds };
56}

Callers 2

axePluginFunction · 0.50

Calls 8

pluralizeTokenFunction · 0.90
shouldExpandForUrlsFunction · 0.90
expandAuditsForUrlsFunction · 0.90
expandGroupsForUrlsFunction · 0.90
loadAxeRulesFunction · 0.85
transformRulesToAuditsFunction · 0.85
transformRulesToGroupsFunction · 0.85
infoMethod · 0.80

Tested by

no test coverage detected