generated from kyma-project/template-repository
-
Notifications
You must be signed in to change notification settings - Fork 23
/
.testcoverage.yml
77 lines (72 loc) · 2.84 KB
/
.testcoverage.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
# (mandatory)
# Path to coverprofile file (output of `go test -coverprofile` command)
profile: cover.out
# (optional)
# When specified reported file paths will not contain local prefix in the output
local-prefix: "github.com/kyma-project/telemetry-manager"
# Holds coverage thresholds percentages, values should be in range [0-100]
threshold:
# (optional; default 0)
# The minimum coverage that each package should have
package: 90
# Holds regexp rules which will override thresholds for matched files or packages using their paths.
#
# First rule from this list that matches file or package is going to apply new threshold to it.
# If project has multiple rules that match same path, override rules should be listed in order from
# specific to more general rules.
override:
# Temporarily decrease coverage threshold for certain packages, we need to increase the coverage and remove these entries from the list
- threshold: 87
path: ^internal/istiostatus$
- threshold: 87
path: ^internal/otelcollector/config/otlpexporter$
- threshold: 77
path: ^internal/reconciler/logpipeline/fluentbit$
- threshold: 0
path: ^internal/reconciler/logpipeline/otel$
- threshold: 82
path: ^internal/reconciler/logpipeline$
- threshold: 77
path: ^internal/reconciler/metricpipeline$
- threshold: 60
path: ^internal/reconciler/telemetry$
- threshold: 74
path: ^internal/reconciler/tracepipeline$
- threshold: 83
path: ^internal/resources/otelcollector$
- threshold: 78
path: ^internal/resources/selfmonitor$
- threshold: 80
path: ^internal/validators/secretref$
- threshold: 75
path: ^internal/resourcelock$
- threshold: 84
path: ^internal/webhookcert$
- threshold: 85
path: ^webhook/logpipeline/v1alpha1$
- threshold: 84
path: ^webhook/logpipeline/v1beta1$
- threshold: 83
path: ^internal/utils/logpipeline$
- threshold: 75
path: ^webhook/tracepipeline/v1alpha1$
- threshold: 75
path: ^webhook/tracepipeline/v1beta1$
# Holds regexp rules which will exclude matched files or packages from coverage statistics
exclude:
# Exclude files or packages matching their paths
paths:
- ^apis # apis should in general only contain Go structs and not unit tested
- ^controllers # controllers are covered by e2e tests
- main
- mocks
- stubs
- ^internal/utils/k8s # k8sutils has to be dissected into smaller single-purpose packages, for now excluding from coverage check
- internal/utils/logger
- ^internal/reconciler/logparser # logparser reconciler will be removed soon
- ^test # e2e and integration tests
- webhook/logparser # logparser will be removed soon
- ^internal/utils/test # some functions in testutils are being used in e2e tests only
# NOTES:
# - symbol `/` in all path regexps will be replaced by
# current OS file path separator to properly work on Windows