@code-pushup/coverage-plugin 0.82.0 → 0.83.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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@code-pushup/coverage-plugin",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.83.0",
|
|
4
4
|
"description": "Code PushUp plugin for tracking code coverage ☂",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/code-pushup/cli/tree/main/packages/plugin-coverage#readme",
|
|
@@ -34,8 +34,8 @@
|
|
|
34
34
|
},
|
|
35
35
|
"type": "module",
|
|
36
36
|
"dependencies": {
|
|
37
|
-
"@code-pushup/models": "0.
|
|
38
|
-
"@code-pushup/utils": "0.
|
|
37
|
+
"@code-pushup/models": "0.83.0",
|
|
38
|
+
"@code-pushup/utils": "0.83.0",
|
|
39
39
|
"ansis": "^3.3.0",
|
|
40
40
|
"parse-lcov": "^1.0.4",
|
|
41
41
|
"yargs": "^17.7.2",
|
package/src/lib/config.js
CHANGED
|
@@ -1,45 +1,55 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { pluginScoreTargetsSchema } from '@code-pushup/models';
|
|
3
|
-
export const coverageTypeSchema = z
|
|
4
|
-
|
|
3
|
+
export const coverageTypeSchema = z
|
|
4
|
+
.enum(['function', 'branch', 'line'])
|
|
5
|
+
.meta({ title: 'CoverageType' });
|
|
6
|
+
export const coverageResultSchema = z
|
|
7
|
+
.union([
|
|
5
8
|
z.object({
|
|
6
9
|
resultsPath: z
|
|
7
10
|
.string()
|
|
8
11
|
.includes('lcov')
|
|
9
|
-
.
|
|
12
|
+
.meta({ description: 'Path to coverage results for Nx setup.' }),
|
|
10
13
|
pathToProject: z
|
|
11
14
|
.string()
|
|
12
|
-
.
|
|
15
|
+
.meta({
|
|
16
|
+
description: 'Path from workspace root to project root. Necessary for LCOV reports which provide a relative path.',
|
|
17
|
+
})
|
|
13
18
|
.optional(),
|
|
14
19
|
}),
|
|
15
|
-
z
|
|
16
|
-
.
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
export const coveragePluginConfigSchema = z
|
|
20
|
+
z.string().includes('lcov').meta({
|
|
21
|
+
description: 'Path to coverage results for a single project setup.',
|
|
22
|
+
}),
|
|
23
|
+
])
|
|
24
|
+
.meta({ title: 'CoverageResult' });
|
|
25
|
+
export const coveragePluginConfigSchema = z
|
|
26
|
+
.object({
|
|
21
27
|
coverageToolCommand: z
|
|
22
28
|
.object({
|
|
23
|
-
command: z
|
|
24
|
-
|
|
25
|
-
.
|
|
26
|
-
.
|
|
27
|
-
|
|
29
|
+
command: z
|
|
30
|
+
.string()
|
|
31
|
+
.min(1)
|
|
32
|
+
.meta({ description: 'Command to run coverage tool.' }),
|
|
33
|
+
args: z.array(z.string()).optional().meta({
|
|
34
|
+
description: 'Arguments to be passed to the coverage tool.',
|
|
35
|
+
}),
|
|
28
36
|
})
|
|
29
37
|
.optional(),
|
|
30
|
-
continueOnCommandFail: z
|
|
31
|
-
.
|
|
32
|
-
|
|
33
|
-
.describe('Continue on coverage tool command failure or error. Defaults to true.'),
|
|
38
|
+
continueOnCommandFail: z.boolean().default(true).meta({
|
|
39
|
+
description: 'Continue on coverage tool command failure or error. Defaults to true.',
|
|
40
|
+
}),
|
|
34
41
|
coverageTypes: z
|
|
35
42
|
.array(coverageTypeSchema)
|
|
36
43
|
.min(1)
|
|
37
44
|
.default(['function', 'branch', 'line'])
|
|
38
|
-
.
|
|
45
|
+
.meta({
|
|
46
|
+
description: 'Coverage types measured. Defaults to all available types.',
|
|
47
|
+
}),
|
|
39
48
|
reports: z
|
|
40
49
|
.array(coverageResultSchema)
|
|
41
50
|
.min(1)
|
|
42
51
|
.describe('Path to all code coverage report files. Only LCOV format is supported for now.'),
|
|
43
52
|
scoreTargets: pluginScoreTargetsSchema,
|
|
44
|
-
})
|
|
53
|
+
})
|
|
54
|
+
.meta({ title: 'CoveragePluginConfig' });
|
|
45
55
|
//# sourceMappingURL=config.js.map
|
package/src/lib/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/lib/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC;KAChC,IAAI,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;KACpC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;AAGnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAClC,KAAK,CAAC;IACL,CAAC,CAAC,MAAM,CAAC;QACP,WAAW,EAAE,CAAC;aACX,MAAM,EAAE;aACR,QAAQ,CAAC,MAAM,CAAC;aAChB,IAAI,CAAC,EAAE,WAAW,EAAE,wCAAwC,EAAE,CAAC;QAClE,aAAa,EAAE,CAAC;aACb,MAAM,EAAE;aACR,IAAI,CAAC;YACJ,WAAW,EACT,qGAAqG;SACxG,CAAC;aACD,QAAQ,EAAE;KACd,CAAC;IACF,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;QAC/B,WAAW,EAAE,sDAAsD;KACpE,CAAC;CACH,CAAC;KACD,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAGrC,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC;KACxC,MAAM,CAAC;IACN,mBAAmB,EAAE,CAAC;SACnB,MAAM,CAAC;QACN,OAAO,EAAE,CAAC;aACP,MAAM,EAAE;aACR,GAAG,CAAC,CAAC,CAAC;aACN,IAAI,CAAC,EAAE,WAAW,EAAE,+BAA+B,EAAE,CAAC;QACzD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;YACxC,WAAW,EAAE,8CAA8C;SAC5D,CAAC;KACH,CAAC;SACD,QAAQ,EAAE;IACb,qBAAqB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;QACpD,WAAW,EACT,uEAAuE;KAC1E,CAAC;IACF,aAAa,EAAE,CAAC;SACb,KAAK,CAAC,kBAAkB,CAAC;SACzB,GAAG,CAAC,CAAC,CAAC;SACN,OAAO,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;SACvC,IAAI,CAAC;QACJ,WAAW,EACT,2DAA2D;KAC9D,CAAC;IACJ,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,oBAAoB,CAAC;SAC3B,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACP,gFAAgF,CACjF;IACH,YAAY,EAAE,wBAAwB;CACvC,CAAC;KACD,IAAI,CAAC,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import { validate, } from '@code-pushup/models';
|
|
4
5
|
import { capitalize } from '@code-pushup/utils';
|
|
5
6
|
import { coveragePluginConfigSchema, } from './config.js';
|
|
6
7
|
import { createRunnerConfig } from './runner/index.js';
|
|
@@ -24,7 +25,7 @@ import { coverageDescription, coverageTypeWeightMapper } from './utils.js';
|
|
|
24
25
|
* @returns Plugin configuration.
|
|
25
26
|
*/
|
|
26
27
|
export async function coveragePlugin(config) {
|
|
27
|
-
const coverageConfig = coveragePluginConfigSchema
|
|
28
|
+
const coverageConfig = validate(coveragePluginConfigSchema, config);
|
|
28
29
|
const audits = coverageConfig.coverageTypes.map((type) => ({
|
|
29
30
|
slug: `${type}-coverage`,
|
|
30
31
|
title: `${capitalize(type)} coverage`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coverage-plugin.js","sourceRoot":"","sources":["../../../src/lib/coverage-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"coverage-plugin.js","sourceRoot":"","sources":["../../../src/lib/coverage-plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAIL,QAAQ,GACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAGL,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAE3E;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,MAA4B;IAE5B,MAAM,cAAc,GAAG,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAC,CAAC;IAEpE,MAAM,MAAM,GAAG,cAAc,CAAC,aAAa,CAAC,GAAG,CAC7C,CAAC,IAAI,EAAS,EAAE,CAAC,CAAC;QAChB,IAAI,EAAE,GAAG,IAAI,WAAW;QACxB,KAAK,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW;QACrC,WAAW,EAAE,mBAAmB,CAAC,IAAI,CAAC;KACvC,CAAC,CACH,CAAC;IAEF,MAAM,KAAK,GAAU;QACnB,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,wDAAwD;QACrE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACzB,GAAG,KAAK;YACR,MAAM,EACJ,wBAAwB,CACtB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAiB,CAC7D;SACJ,CAAC,CAAC;KACJ,CAAC;IAEF,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAChC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAC5C,IAAI,EACJ,QAAQ,CACT,CAAC;IAEF,MAAM,WAAW,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAChD,oBAAoB,CACkB,CAAC;IAEzC,MAAM,YAAY,GAAG,cAAc,CAAC,YAAY,CAAC;IAEjD,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,eAAe;QACtB,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,4CAA4C;QACzD,OAAO,EAAE,6DAA6D;QACtE,WAAW,EAAE,WAAW,CAAC,IAAI;QAC7B,OAAO,EAAE,WAAW,CAAC,OAAO;QAC5B,MAAM;QACN,MAAM,EAAE,CAAC,KAAK,CAAC;QACf,MAAM,EAAE,MAAM,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,CAAC;QAClE,GAAG,CAAC,YAAY,IAAI,EAAE,YAAY,EAAE,CAAC;KACtC,CAAC;AACJ,CAAC"}
|