apex-code-coverage-transformer 2.4.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/README.md +123 -24
- package/lib/commands/acc-transformer/transform.d.ts +1 -1
- package/lib/commands/acc-transformer/transform.js +15 -8
- package/lib/commands/acc-transformer/transform.js.map +1 -1
- package/lib/handlers/cloverCoverageHandler.d.ts +7 -0
- package/lib/handlers/cloverCoverageHandler.js +77 -0
- package/lib/handlers/cloverCoverageHandler.js.map +1 -0
- package/lib/handlers/coberturaCoverageHandler.d.ts +8 -0
- package/lib/handlers/coberturaCoverageHandler.js +75 -0
- package/lib/handlers/coberturaCoverageHandler.js.map +1 -0
- package/lib/handlers/getCoverageHandler.d.ts +2 -0
- package/lib/handlers/getCoverageHandler.js +19 -0
- package/lib/handlers/getCoverageHandler.js.map +1 -0
- package/lib/handlers/lcovonlyCoverageHandler.d.ts +7 -0
- package/lib/handlers/lcovonlyCoverageHandler.js +37 -0
- package/lib/handlers/lcovonlyCoverageHandler.js.map +1 -0
- package/lib/handlers/sonarCoverageHandler.d.ts +7 -0
- package/lib/handlers/sonarCoverageHandler.js +38 -0
- package/lib/handlers/sonarCoverageHandler.js.map +1 -0
- package/lib/helpers/constants.js +1 -1
- package/lib/helpers/constants.js.map +1 -1
- package/lib/helpers/generateReport.d.ts +2 -0
- package/lib/helpers/generateReport.js +31 -0
- package/lib/helpers/generateReport.js.map +1 -0
- package/lib/helpers/setCoveredLinesClover.js +0 -9
- package/lib/helpers/setCoveredLinesClover.js.map +1 -1
- package/lib/helpers/setCoveredLinesLcov.d.ts +2 -0
- package/lib/helpers/setCoveredLinesLcov.js +24 -0
- package/lib/helpers/setCoveredLinesLcov.js.map +1 -0
- package/lib/helpers/transformDeployCoverageReport.js +8 -89
- package/lib/helpers/transformDeployCoverageReport.js.map +1 -1
- package/lib/helpers/transformTestCoverageReport.js +8 -88
- package/lib/helpers/transformTestCoverageReport.js.map +1 -1
- package/lib/helpers/types.d.ts +18 -1
- package/lib/hooks/postrun.js +4 -4
- package/lib/hooks/postrun.js.map +1 -1
- package/messages/transformer.transform.md +7 -6
- package/oclif.lock +523 -521
- package/oclif.manifest.json +12 -10
- package/package.json +5 -5
- package/lib/helpers/generateXml.d.ts +0 -2
- package/lib/helpers/generateXml.js +0 -14
- package/lib/helpers/generateXml.js.map +0 -1
- package/lib/helpers/initializeCoverageObject.d.ts +0 -5
- package/lib/helpers/initializeCoverageObject.js +0 -68
- package/lib/helpers/initializeCoverageObject.js.map +0 -1
package/oclif.manifest.json
CHANGED
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
"acc-transformer:transform": {
|
|
4
4
|
"aliases": [],
|
|
5
5
|
"args": {},
|
|
6
|
-
"description": "Transform the Apex code coverage JSON file created by the Salesforce CLI deploy and test command into SonarQube, Clover, or Cobertura format.",
|
|
6
|
+
"description": "Transform the Apex code coverage JSON file created by the Salesforce CLI deploy and test command into SonarQube, Clover, LCovOnly or Cobertura format.",
|
|
7
7
|
"examples": [
|
|
8
|
-
"`sf acc-transformer transform -j \"coverage.json\" -
|
|
9
|
-
"`sf acc-transformer transform -j \"coverage.json\" -
|
|
10
|
-
"`sf acc-transformer transform -j \"coverage.json\" -
|
|
8
|
+
"`sf acc-transformer transform -j \"coverage.json\" -r \"coverage.xml\" -f \"sonar\"`",
|
|
9
|
+
"`sf acc-transformer transform -j \"coverage.json\" -r \"coverage.xml\" -f \"cobertura\"`",
|
|
10
|
+
"`sf acc-transformer transform -j \"coverage.json\" -r \"coverage.xml\" -f \"clover\"`",
|
|
11
|
+
"`sf acc-transformer transform -j \"coverage.json\" -r \"coverage.info\" -f \"lcovonly\"`"
|
|
11
12
|
],
|
|
12
13
|
"flags": {
|
|
13
14
|
"json": {
|
|
@@ -34,11 +35,11 @@
|
|
|
34
35
|
"multiple": false,
|
|
35
36
|
"type": "option"
|
|
36
37
|
},
|
|
37
|
-
"
|
|
38
|
-
"char": "
|
|
39
|
-
"name": "
|
|
38
|
+
"output-report": {
|
|
39
|
+
"char": "r",
|
|
40
|
+
"name": "output-report",
|
|
40
41
|
"required": true,
|
|
41
|
-
"summary": "Path to the code coverage
|
|
42
|
+
"summary": "Path to the code coverage file that will be created by this plugin.",
|
|
42
43
|
"default": "coverage.xml",
|
|
43
44
|
"hasDynamicHelp": false,
|
|
44
45
|
"multiple": false,
|
|
@@ -55,7 +56,8 @@
|
|
|
55
56
|
"options": [
|
|
56
57
|
"sonar",
|
|
57
58
|
"cobertura",
|
|
58
|
-
"clover"
|
|
59
|
+
"clover",
|
|
60
|
+
"lcovonly"
|
|
59
61
|
],
|
|
60
62
|
"type": "option"
|
|
61
63
|
}
|
|
@@ -83,5 +85,5 @@
|
|
|
83
85
|
]
|
|
84
86
|
}
|
|
85
87
|
},
|
|
86
|
-
"version": "2.
|
|
88
|
+
"version": "2.5.0"
|
|
87
89
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apex-code-coverage-transformer",
|
|
3
|
-
"description": "Transforms the Apex code coverage JSON created during Salesforce deployments and test runs into SonarQube, Clover, or Cobertura format.",
|
|
4
|
-
"version": "2.
|
|
3
|
+
"description": "Transforms the Apex code coverage JSON created during Salesforce deployments and test runs into SonarQube, Clover, LCovOnly, or Cobertura format.",
|
|
4
|
+
"version": "2.5.0",
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"@oclif/core": "^4.0.37",
|
|
7
7
|
"@salesforce/core": "^8.8.0",
|
|
@@ -9,15 +9,15 @@
|
|
|
9
9
|
"xmlbuilder2": "^3.1.1"
|
|
10
10
|
},
|
|
11
11
|
"devDependencies": {
|
|
12
|
-
"@commitlint/cli": "^19.6.
|
|
12
|
+
"@commitlint/cli": "^19.6.1",
|
|
13
13
|
"@commitlint/config-conventional": "^19.6.0",
|
|
14
|
-
"@oclif/plugin-command-snapshot": "^5.2.
|
|
14
|
+
"@oclif/plugin-command-snapshot": "^5.2.24",
|
|
15
15
|
"@salesforce/cli-plugins-testkit": "^5.3.39",
|
|
16
16
|
"@salesforce/dev-scripts": "^10.2.11",
|
|
17
17
|
"@types/node": "18",
|
|
18
18
|
"eslint-plugin-sf-plugin": "^1.20.13",
|
|
19
19
|
"husky": "^9.1.7",
|
|
20
|
-
"oclif": "^4.
|
|
20
|
+
"oclif": "^4.17.7",
|
|
21
21
|
"shx": "0.3.4",
|
|
22
22
|
"ts-node": "^10.9.2",
|
|
23
23
|
"typescript": "^5.7.2"
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
import { create } from 'xmlbuilder2';
|
|
3
|
-
export function generateXml(coverageObj, format) {
|
|
4
|
-
const isHeadless = format === 'cobertura' || format === 'clover';
|
|
5
|
-
let xml = create(coverageObj).end({ prettyPrint: true, indent: ' ', headless: isHeadless });
|
|
6
|
-
if (format === 'cobertura') {
|
|
7
|
-
xml = `<?xml version="1.0" ?>\n<!DOCTYPE coverage SYSTEM "http://cobertura.sourceforge.net/xml/coverage-04.dtd">\n${xml}`;
|
|
8
|
-
}
|
|
9
|
-
else if (format === 'clover') {
|
|
10
|
-
xml = `<?xml version="1.0" encoding="UTF-8"?>\n${xml}`;
|
|
11
|
-
}
|
|
12
|
-
return xml;
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=generateXml.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"generateXml.js","sourceRoot":"","sources":["../../src/helpers/generateXml.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,MAAM,UAAU,WAAW,CACzB,WAAiF,EACjF,MAAc;IAEd,MAAM,UAAU,GAAG,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,QAAQ,CAAC;IACjE,IAAI,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IAE7F,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3B,GAAG,GAAG,8GAA8G,GAAG,EAAE,CAAC;IAC5H,CAAC;SAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,GAAG,GAAG,2CAA2C,GAAG,EAAE,CAAC;IACzD,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { SonarCoverageObject, CoberturaCoverageObject, CloverCoverageObject, CoberturaPackage } from './types.js';
|
|
2
|
-
export declare function initializeCoverageObject(format: string): {
|
|
3
|
-
coverageObj: SonarCoverageObject | CoberturaCoverageObject | CloverCoverageObject;
|
|
4
|
-
packageObj: CoberturaPackage | null;
|
|
5
|
-
};
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
'use strict';
|
|
2
|
-
export function initializeCoverageObject(format) {
|
|
3
|
-
let coverageObj;
|
|
4
|
-
if (format === 'sonar') {
|
|
5
|
-
coverageObj = {
|
|
6
|
-
coverage: { '@version': '1', file: [] },
|
|
7
|
-
};
|
|
8
|
-
}
|
|
9
|
-
else if (format === 'cobertura') {
|
|
10
|
-
coverageObj = {
|
|
11
|
-
coverage: {
|
|
12
|
-
'@lines-valid': 0,
|
|
13
|
-
'@lines-covered': 0,
|
|
14
|
-
'@line-rate': 0,
|
|
15
|
-
'@branches-valid': 0,
|
|
16
|
-
'@branches-covered': 0,
|
|
17
|
-
'@branch-rate': 1,
|
|
18
|
-
'@timestamp': Date.now(),
|
|
19
|
-
'@complexity': 0,
|
|
20
|
-
'@version': '0.1',
|
|
21
|
-
sources: { source: ['.'] },
|
|
22
|
-
packages: { package: [] },
|
|
23
|
-
},
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
coverageObj = {
|
|
28
|
-
coverage: {
|
|
29
|
-
'@generated': Date.now(),
|
|
30
|
-
'@clover': '3.2.0',
|
|
31
|
-
project: {
|
|
32
|
-
'@timestamp': Date.now(),
|
|
33
|
-
'@name': 'All files',
|
|
34
|
-
metrics: {
|
|
35
|
-
'@statements': 0,
|
|
36
|
-
'@coveredstatements': 0,
|
|
37
|
-
'@conditionals': 0,
|
|
38
|
-
'@coveredconditionals': 0,
|
|
39
|
-
'@methods': 0,
|
|
40
|
-
'@coveredmethods': 0,
|
|
41
|
-
'@elements': 0,
|
|
42
|
-
'@coveredelements': 0,
|
|
43
|
-
'@complexity': 0,
|
|
44
|
-
'@loc': 0,
|
|
45
|
-
'@ncloc': 0,
|
|
46
|
-
'@packages': 1,
|
|
47
|
-
'@files': 0,
|
|
48
|
-
'@classes': 0,
|
|
49
|
-
},
|
|
50
|
-
file: [],
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
};
|
|
54
|
-
}
|
|
55
|
-
const packageObj = format === 'cobertura'
|
|
56
|
-
? {
|
|
57
|
-
'@name': 'main',
|
|
58
|
-
'@line-rate': 0,
|
|
59
|
-
'@branch-rate': 1,
|
|
60
|
-
classes: { class: [] },
|
|
61
|
-
}
|
|
62
|
-
: null;
|
|
63
|
-
if (packageObj) {
|
|
64
|
-
coverageObj.coverage.packages.package.push(packageObj);
|
|
65
|
-
}
|
|
66
|
-
return { coverageObj, packageObj };
|
|
67
|
-
}
|
|
68
|
-
//# sourceMappingURL=initializeCoverageObject.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"initializeCoverageObject.js","sourceRoot":"","sources":["../../src/helpers/initializeCoverageObject.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAUb,MAAM,UAAU,wBAAwB,CAAC,MAAc;IAIrD,IAAI,WAAiF,CAAC;IAEtF,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,WAAW,GAAG;YACZ,QAAQ,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE;SACjB,CAAC;IAC3B,CAAC;SAAM,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAClC,WAAW,GAAG;YACZ,QAAQ,EAAE;gBACR,cAAc,EAAE,CAAC;gBACjB,gBAAgB,EAAE,CAAC;gBACnB,YAAY,EAAE,CAAC;gBACf,iBAAiB,EAAE,CAAC;gBACpB,mBAAmB,EAAE,CAAC;gBACtB,cAAc,EAAE,CAAC;gBACjB,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;gBACxB,aAAa,EAAE,CAAC;gBAChB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE;gBAC1B,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE;aAC1B;SACyB,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,WAAW,GAAG;YACZ,QAAQ,EAAE;gBACR,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;gBACxB,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE;oBACP,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;oBACxB,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE;wBACP,aAAa,EAAE,CAAC;wBAChB,oBAAoB,EAAE,CAAC;wBACvB,eAAe,EAAE,CAAC;wBAClB,sBAAsB,EAAE,CAAC;wBACzB,UAAU,EAAE,CAAC;wBACb,iBAAiB,EAAE,CAAC;wBACpB,WAAW,EAAE,CAAC;wBACd,kBAAkB,EAAE,CAAC;wBACrB,aAAa,EAAE,CAAC;wBAChB,MAAM,EAAE,CAAC;wBACT,QAAQ,EAAE,CAAC;wBACX,WAAW,EAAE,CAAC;wBACd,QAAQ,EAAE,CAAC;wBACX,UAAU,EAAE,CAAC;qBACd;oBACD,IAAI,EAAE,EAAE;iBACT;aACF;SACsB,CAAC;IAC5B,CAAC;IAED,MAAM,UAAU,GACd,MAAM,KAAK,WAAW;QACpB,CAAC,CAAE;YACC,OAAO,EAAE,MAAM;YACf,YAAY,EAAE,CAAC;YACf,cAAc,EAAE,CAAC;YACjB,OAAO,EAAE,EAAE,KAAK,EAAE,EAAsB,EAAE;SACtB;QACxB,CAAC,CAAC,IAAI,CAAC;IAEX,IAAI,UAAU,EAAE,CAAC;QACd,WAAuC,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACtF,CAAC;IAED,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC;AACrC,CAAC"}
|