-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy path.gremlins.toml
More file actions
73 lines (58 loc) · 1.53 KB
/
Copy path.gremlins.toml
File metadata and controls
73 lines (58 loc) · 1.53 KB
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
# Gremlins mutation testing configuration
# Run with: gremlins unleash ./...
# Documentation: https://gremlins.dev/
# Timeout for each mutation test
[global]
timeout = "30s"
# Only run on packages with tests
[filter]
# Exclude integration tests to speed up mutation testing
tags = ["!integration", "!e2e"]
# Exclude vendor and test files
exclude = [
"**/vendor/**",
"**/*_test.go",
"**/testdata/**",
"**/mocks/**",
]
# Target specific packages for mutation testing
include = [
"./internal/rpchandler/...",
"./internal/email/...",
"./internal/resettoken/...",
"./internal/validators/...",
"./internal/ratelimit/...",
"./internal/options/...",
]
# Mutation operators to use
[mutators]
# Arithmetic mutations: + -> -, * -> /, etc.
arithmetic = true
# Comparison mutations: == -> !=, < -> <=, etc.
comparison = true
# Logical mutations: && -> ||, ! -> (nothing), etc.
logical = true
# Increment/decrement mutations: ++ -> --, etc.
incdec = true
# Conditional boundary mutations: < -> <=, etc.
conditional = true
# Return value mutations
return_vals = true
# Void method call removal
void_call = false
# Constructor call mutations (usually too disruptive)
constructor_calls = false
# Output configuration
[output]
# Generate JSON report for CI integration
format = "json"
file = "mutation-report.json"
# Threshold configuration
[threshold]
# Minimum mutation score to pass (percentage)
# Start conservative and increase as coverage improves
score = 70.0
# Parallelism
[execution]
# Number of parallel workers
workers = 4