-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
.rubocop.yml
132 lines (105 loc) · 2.91 KB
/
.rubocop.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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
require:
- rubocop-factory_bot
- rubocop-performance
- rubocop-rails
- rubocop-rake
- rubocop-rspec
- rubocop-rspec_rails
inherit_from: .rubocop_todo.yml
# The behavior of RuboCop can be controlled via the .rubocop.yml
# configuration file. It makes it possible to enable/disable
# certain cops (checks) and to alter their behavior if they accept
# any parameters. The file can be placed either in your home
# directory or in some project directory.
#
# RuboCop will start looking for the configuration file in the directory
# where the inspected file is and continue its way up to the root directory.
#
# See https://docs.rubocop.org/rubocop/configuration
AllCops:
NewCops: enable
TargetRubyVersion: 3.1.4
Exclude:
- 'db/schema.rb'
- 'vendor/**/*'
FactoryBot/SyntaxMethods:
Enabled: false
# Cop supports --auto-correct.
# Configuration parameters: AutoCorrect, AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
# URISchemes: http, https
Layout/LineLength:
Max: 165
Exclude:
- 'bin/bundle'
# We use arrays to group multiple similar specs under a single implementation
Lint/ConstantDefinitionInBlock:
Exclude:
- 'spec/**/*'
Metrics/AbcSize:
Max: 26
Exclude:
- 'bin/bundle'
- 'db/migrate/*'
Metrics/BlockLength:
Max: 40
CountAsOne: ['array', 'heredoc']
Exclude:
- 'app/api/goggles/*_api.rb'
- 'spec/**/*'
Metrics/ClassLength:
Max: 120
Exclude:
- 'app/api/goggles/calendars_api.rb'
- 'app/api/goggles/meetings_api.rb'
- 'app/api/goggles/meeting_individual_results_api.rb'
- 'app/api/goggles/meeting_reservations_api.rb'
- 'app/api/goggles/user_results_api.rb'
Metrics/CyclomaticComplexity:
Exclude:
- 'bin/bundle'
Metrics/MethodLength:
Max: 35
Metrics/ModuleLength:
Exclude:
- 'app/api/goggles/api_helpers.rb'
Metrics/PerceivedComplexity:
Exclude:
- 'bin/bundle'
# We use arrays to group multiple similar specs under a single implementation
Performance/CollectionLiteralInLoop:
Exclude:
- 'spec/**/*'
# Configuration parameters: EnforcedStyle, AllowToTime.
# SupportedStyles: strict, flexible
Rails/Date:
Exclude:
- 'spec/support/shared_api_response_behaviors.rb'
# Configuration parameters: Include, CustomTransform, IgnoreMethods, SpecSuffixOnly.
# Include: **/*_spec*rb*, **/spec/**/*
Rails/FilePath:
Exclude:
- 'spec/performances/swimmers_api_spec.rb'
RSpec/ExpectInHook:
Enabled: false
RSpec/ExpectInLet:
Enabled: false
RSpec/ExampleLength:
Max: 20
RSpec/MultipleExpectations:
Enabled: false
RSpec/MultipleMemoizedHelpers:
Max: 18
RSpec/NestedGroups:
Max: 5
Style/ClassAndModuleChildren:
Exclude:
- 'api/**/*'
Style/Documentation:
Exclude:
- 'spec/**/*'
- 'test/**/*'
- 'config/application.rb'
- 'app/controllers/application_controller.rb'
- 'app/helpers/application_helper.rb'
- 'app/mailers/application_mailer.rb'
- 'app/models/application_record.rb'