forked from moredip/caseflow-certification
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.codeclimate.yml
114 lines (112 loc) · 2.69 KB
/
.codeclimate.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
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
version: "2" # required to adjust maintainability checks
checks:
argument-count:
config:
threshold: 4
complex-logic:
config:
threshold: 4
file-lines:
enabled: false
config:
threshold: 250
method-complexity:
enabled: false
config:
threshold: 5
method-count:
enabled: false
config:
threshold: 20
method-lines:
config:
threshold: 25
enabled: false
nested-control-flow:
config:
threshold: 4
return-statements:
config:
threshold: 4
similar-code:
enabled: false
config:
threshold: # language-specific defaults. an override will affect all languages.
identical-code:
config:
threshold: # language-specific defaults. an override will affect all languages.
exclude_patterns:
- 'client/app/queue/cavc/utils.js'
plugins:
brakeman:
enabled: true
bundler-audit:
enabled: true
duplication:
enabled: true
config:
languages:
ruby:
javascript:
mass_threshold: 50
exclude_patterns:
- 'db/migrate/*'
eslint:
enabled: true
fixme:
enabled: true
exclude_patterns:
- '.codeclimate.yml'
- 'Makefile.example'
config:
strings:
- TODO
- FIXME
- HACK
- BUG
- XXX
reek:
enabled: true
checks:
Attribute:
enabled: false
exclude_patterns:
- 'db/migrate/*'
rubocop:
enabled: true
channel: rubocop-0-79
scss-lint:
enabled: true
grep:
enabled: true
config:
patterns:
tests-sleep:
pattern: sleep
annotation: "Avoid using sleep in tests"
severity: info
categories: Performance
content: >
Avoid using sleep in tests because it affects the performance of the
test suite.
path_patterns:
- "spec/**/*_spec.rb"
tests-capybara-non-waiting-finder:
pattern: not_to have_content\(?[^,]+\)?$
annotation: "Avoid using capybara's `have_content` with an RSpec negative matcher"
severity: info
categories: Performance
content: >
Avoid using Capybara's `have_content` finder with RSpec's negative matcher. Capybara's
`have_content` selector is a waiting selector, that will block until Capybara finds
the element. Prefer using a non-blocking matcher if possible like
`expect(page.has_no_content?('...')).to eq(true)`.
path_patterns:
- "spec/feature/**/*.rb"
exclude_patterns:
- 'db/schema.rb'
- 'db/seeds.rb'
- 'node_modules/**/*'
- 'app/mappers/zip_code_to_lat_lng_mapper.rb'
- 'tmp/**/*'
- 'app/assets/**/*'