rubocop-rspec 1.36.0 → 1.37.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5941ed5c040054adc2993a3da2b76e591a9096767e486727191702956bc04430
4
- data.tar.gz: 34d3b8460cd36dcf5af8f1cdf918bbd43e43bf5e4c7a5a0fba829eb9c1980cbf
3
+ metadata.gz: 396ca6beb4f3a3bf18ff5bfb0a28481a15060795c84a4e5f1d5a0c44b25ad0f4
4
+ data.tar.gz: 4efa382210002292fede62a31709e452bd1482ec979f0de2512a3447c4efdf13
5
5
  SHA512:
6
- metadata.gz: d868ef13a01bdf13ba05eb54a0b39354017184001d44975ef3e1bbcb0d429f2ccac6675429308886cd3246e3ff83bf8f7e5e34b1b8613b9fdbfc879493f459a9
7
- data.tar.gz: 05fae5ae2505feabbfdfa8203c57a0bbd6f9b398c33d80d9c848e2ed6fd9fdb78019c699b9f428b26533d3799c78051a5a5ddd5176d07224938f29217ca77e61
6
+ metadata.gz: e38bd510d3b6061d2f24cd6b50f11fa147c4cd8c679a892e51e4b528e454f2aa8343ad367373d03cdb9b1075fa52fc01f2db049945a59363ec5e4299e41f4544
7
+ data.tar.gz: b0c0bccd971f132dbfdc3854dac1c2260482e7f5667f9146a5aec6d9da550cb2016002023648bf6aaca210311dc4e859d44536883095b9d3cf31bea5c8b410d9
@@ -2,6 +2,15 @@
2
2
 
3
3
  ## Master (Unreleased)
4
4
 
5
+ ## 1.37.0 (2019-11-25)
6
+
7
+ * Implement `RSpec/DescribedClassModuleWrapping` to disallow RSpec statements within a module. ([@kellysutton][])
8
+ * Fix documentation rake task to support Rubocop 0.75. ([@nickcampbell18][])
9
+ * Fix `RSpec/SubjectStub` to detect implicit subjects stubbed. ([@QQism][])
10
+ * Fix `RSpec/Pending` not flagging `skip` with string values. ([@pirj][])
11
+ * Add `AllowedExplicitMatchers` config option for `RSpec/PredicateMatcher`. ([@mkrawc][])
12
+ * Add `FactoryBot/FactoryClassName` cop. ([@jfragoulis][])
13
+
5
14
  ## 1.36.0 (2019-09-27)
6
15
 
7
16
  * Fix `RSpec/DescribedClass`'s error when `described_class` is used as part of a constant. ([@pirj][])
@@ -452,3 +461,8 @@ Compatibility release so users can upgrade RuboCop to 0.51.0. No new features.
452
461
  [@foton]: https://github.com/foton
453
462
  [@nc-holodakg]: https://github.com/nc-holodakg
454
463
  [@onumis]: https://github.com/onumis
464
+ [@nickcampbell18]: https://github.com/nickcampbell18
465
+ [@QQism]: https://github.com/QQism
466
+ [@kellysutton]: https://github.com/kellysutton
467
+ [@mkrawc]: https://github.com/mkrawc
468
+ [@jfragoulis]: https://github.com/jfragoulis
@@ -13,32 +13,32 @@ AllCops:
13
13
  RSpec/AlignLeftLetBrace:
14
14
  Description: Checks that left braces for adjacent single line lets are aligned.
15
15
  Enabled: false
16
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AlignLeftLetBrace
16
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AlignLeftLetBrace
17
17
 
18
18
  RSpec/AlignRightLetBrace:
19
19
  Description: Checks that right braces for adjacent single line lets are aligned.
20
20
  Enabled: false
21
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AlignRightLetBrace
21
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AlignRightLetBrace
22
22
 
23
23
  RSpec/AnyInstance:
24
24
  Description: Check that instances are not being stubbed globally.
25
25
  Enabled: true
26
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AnyInstance
26
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AnyInstance
27
27
 
28
28
  RSpec/AroundBlock:
29
29
  Description: Checks that around blocks actually run the test.
30
30
  Enabled: true
31
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AroundBlock
31
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/AroundBlock
32
32
 
33
33
  RSpec/Be:
34
34
  Description: Check for expectations where `be` is used without argument.
35
35
  Enabled: true
36
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Be
36
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Be
37
37
 
38
38
  RSpec/BeEql:
39
39
  Description: Check for expectations where `be(...)` can replace `eql(...)`.
40
40
  Enabled: true
41
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/BeEql
41
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/BeEql
42
42
 
43
43
  RSpec/BeforeAfterAll:
44
44
  Description: Check that before/after(:all) isn't being used.
@@ -47,12 +47,12 @@ RSpec/BeforeAfterAll:
47
47
  - spec/spec_helper.rb
48
48
  - spec/rails_helper.rb
49
49
  - spec/support/**/*.rb
50
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/BeforeAfterAll
50
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/BeforeAfterAll
51
51
 
52
52
  RSpec/ContextMethod:
53
53
  Description: "`context` should not be used for specifying methods."
54
54
  Enabled: true
55
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ContextMethod
55
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ContextMethod
56
56
 
57
57
  RSpec/ContextWording:
58
58
  Description: Checks that `context` docstring starts with an allowed prefix.
@@ -61,22 +61,22 @@ RSpec/ContextWording:
61
61
  - when
62
62
  - with
63
63
  - without
64
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ContextWording
64
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ContextWording
65
65
 
66
66
  RSpec/DescribeClass:
67
67
  Description: Check that the first argument to the top level describe is a constant.
68
68
  Enabled: true
69
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribeClass
69
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribeClass
70
70
 
71
71
  RSpec/DescribeMethod:
72
72
  Description: Checks that the second argument to `describe` specifies a method.
73
73
  Enabled: true
74
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribeMethod
74
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribeMethod
75
75
 
76
76
  RSpec/DescribeSymbol:
77
77
  Description: Avoid describing symbols.
78
78
  Enabled: true
79
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribeSymbol
79
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribeSymbol
80
80
 
81
81
  RSpec/DescribedClass:
82
82
  Description: Checks that tests use `described_class`.
@@ -86,51 +86,56 @@ RSpec/DescribedClass:
86
86
  SupportedStyles:
87
87
  - described_class
88
88
  - explicit
89
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribedClass
89
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribedClass
90
+
91
+ RSpec/DescribedClassModuleWrapping:
92
+ Description: Avoid opening modules and defining specs within them.
93
+ Enabled: false
94
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/DescribedClassModuleWrapping
90
95
 
91
96
  RSpec/Dialect:
92
97
  Description: This cop enforces custom RSpec dialects.
93
98
  Enabled: false
94
99
  PreferredMethods: {}
95
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Dialect
100
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Dialect
96
101
 
97
102
  RSpec/EmptyExampleGroup:
98
103
  Description: Checks if an example group does not include any tests.
99
104
  Enabled: true
100
105
  CustomIncludeMethods: []
101
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyExampleGroup
106
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyExampleGroup
102
107
 
103
108
  RSpec/EmptyLineAfterExample:
104
109
  Description: Checks if there is an empty line after example blocks.
105
110
  Enabled: true
106
111
  AllowConsecutiveOneLiners: true
107
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterExample
112
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterExample
108
113
 
109
114
  RSpec/EmptyLineAfterExampleGroup:
110
115
  Description: Checks if there is an empty line after example group blocks.
111
116
  Enabled: true
112
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterExampleGroup
117
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterExampleGroup
113
118
 
114
119
  RSpec/EmptyLineAfterFinalLet:
115
120
  Description: Checks if there is an empty line after the last let block.
116
121
  Enabled: true
117
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterFinalLet
122
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterFinalLet
118
123
 
119
124
  RSpec/EmptyLineAfterHook:
120
125
  Description: Checks if there is an empty line after hook blocks.
121
126
  Enabled: true
122
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterHook
127
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterHook
123
128
 
124
129
  RSpec/EmptyLineAfterSubject:
125
130
  Description: Checks if there is an empty line after subject block.
126
131
  Enabled: true
127
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterSubject
132
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/EmptyLineAfterSubject
128
133
 
129
134
  RSpec/ExampleLength:
130
135
  Description: Checks for long examples.
131
136
  Enabled: true
132
137
  Max: 5
133
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleLength
138
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleLength
134
139
 
135
140
  RSpec/ExampleWithoutDescription:
136
141
  Description: Checks for examples without a description.
@@ -140,7 +145,7 @@ RSpec/ExampleWithoutDescription:
140
145
  - always_allow
141
146
  - single_line_only
142
147
  - disallow
143
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleWithoutDescription
148
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleWithoutDescription
144
149
 
145
150
  RSpec/ExampleWording:
146
151
  Description: Checks for common mistakes in example descriptions.
@@ -151,14 +156,14 @@ RSpec/ExampleWording:
151
156
  have: has
152
157
  HAVE: HAS
153
158
  IgnoredWords: []
154
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleWording
159
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExampleWording
155
160
 
156
161
  RSpec/ExpectActual:
157
162
  Description: Checks for `expect(...)` calls containing literal values.
158
163
  Enabled: true
159
164
  Exclude:
160
165
  - spec/routing/**/*
161
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectActual
166
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectActual
162
167
 
163
168
  RSpec/ExpectChange:
164
169
  Description: Checks for consistent style of change matcher.
@@ -167,17 +172,17 @@ RSpec/ExpectChange:
167
172
  SupportedStyles:
168
173
  - method_call
169
174
  - block
170
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectChange
175
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectChange
171
176
 
172
177
  RSpec/ExpectInHook:
173
178
  Enabled: true
174
179
  Description: Do not use `expect` in hooks such as `before`.
175
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectInHook
180
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectInHook
176
181
 
177
182
  RSpec/ExpectOutput:
178
183
  Description: Checks for opportunities to use `expect { ... }.to output`.
179
184
  Enabled: true
180
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectOutput
185
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ExpectOutput
181
186
 
182
187
  RSpec/FilePath:
183
188
  Description: Checks that spec file paths are consistent with the test subject.
@@ -186,12 +191,12 @@ RSpec/FilePath:
186
191
  RuboCop: rubocop
187
192
  RSpec: rspec
188
193
  IgnoreMethods: false
189
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/FilePath
194
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/FilePath
190
195
 
191
196
  RSpec/Focus:
192
197
  Description: Checks if examples are focused.
193
198
  Enabled: true
194
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Focus
199
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Focus
195
200
 
196
201
  RSpec/HookArgument:
197
202
  Description: Checks the arguments passed to `before`, `around`, and `after`.
@@ -201,17 +206,17 @@ RSpec/HookArgument:
201
206
  - implicit
202
207
  - each
203
208
  - example
204
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/HookArgument
209
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/HookArgument
205
210
 
206
211
  RSpec/HooksBeforeExamples:
207
212
  Enabled: true
208
213
  Description: Checks for before/around/after hooks that come after an example.
209
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/HooksBeforeExamples
214
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/HooksBeforeExamples
210
215
 
211
216
  RSpec/ImplicitBlockExpectation:
212
217
  Description: Check that implicit block expectation syntax is not used.
213
218
  Enabled: true
214
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ImplicitBlockExpectation
219
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ImplicitBlockExpectation
215
220
 
216
221
  RSpec/ImplicitExpect:
217
222
  Description: Check that a consistent implicit expectation style is used.
@@ -220,7 +225,7 @@ RSpec/ImplicitExpect:
220
225
  SupportedStyles:
221
226
  - is_expected
222
227
  - should
223
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ImplicitExpect
228
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ImplicitExpect
224
229
 
225
230
  RSpec/ImplicitSubject:
226
231
  Enabled: true
@@ -230,23 +235,23 @@ RSpec/ImplicitSubject:
230
235
  - single_line_only
231
236
  - single_statement_only
232
237
  - disallow
233
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ImplicitSubject
238
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ImplicitSubject
234
239
 
235
240
  RSpec/InstanceSpy:
236
241
  Description: Checks for `instance_double` used with `have_received`.
237
242
  Enabled: true
238
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/InstanceSpy
243
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/InstanceSpy
239
244
 
240
245
  RSpec/InstanceVariable:
241
246
  Description: Checks for instance variable usage in specs.
242
247
  AssignmentOnly: false
243
248
  Enabled: true
244
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/InstanceVariable
249
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/InstanceVariable
245
250
 
246
251
  RSpec/InvalidPredicateMatcher:
247
252
  Description: Checks invalid usage for predicate matcher.
248
253
  Enabled: true
249
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/InvalidPredicateMatcher
254
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/InvalidPredicateMatcher
250
255
 
251
256
  RSpec/ItBehavesLike:
252
257
  Description: Checks that only one `it_behaves_like` style is used.
@@ -255,37 +260,37 @@ RSpec/ItBehavesLike:
255
260
  SupportedStyles:
256
261
  - it_behaves_like
257
262
  - it_should_behave_like
258
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ItBehavesLike
263
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ItBehavesLike
259
264
 
260
265
  RSpec/IteratedExpectation:
261
266
  Description: Check that `all` matcher is used instead of iterating over an array.
262
267
  Enabled: true
263
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/IteratedExpectation
268
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/IteratedExpectation
264
269
 
265
270
  RSpec/LeadingSubject:
266
271
  Description: Enforce that subject is the first definition in the test.
267
272
  Enabled: true
268
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LeadingSubject
273
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LeadingSubject
269
274
 
270
275
  RSpec/LeakyConstantDeclaration:
271
276
  Description: Checks that no class, module, or constant is declared.
272
277
  Enabled: true
273
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LeakyConstantDeclaration
278
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LeakyConstantDeclaration
274
279
 
275
280
  RSpec/LetBeforeExamples:
276
281
  Description: Checks for `let` definitions that come after an example.
277
282
  Enabled: true
278
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LetBeforeExamples
283
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LetBeforeExamples
279
284
 
280
285
  RSpec/LetSetup:
281
286
  Description: Checks unreferenced `let!` calls being used for test setup.
282
287
  Enabled: true
283
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LetSetup
288
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/LetSetup
284
289
 
285
290
  RSpec/MessageChain:
286
291
  Description: Check that chains of messages are not being stubbed.
287
292
  Enabled: true
288
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MessageChain
293
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MessageChain
289
294
 
290
295
  RSpec/MessageExpectation:
291
296
  Description: Checks for consistent message expectation style.
@@ -294,7 +299,7 @@ RSpec/MessageExpectation:
294
299
  SupportedStyles:
295
300
  - allow
296
301
  - expect
297
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MessageExpectation
302
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MessageExpectation
298
303
 
299
304
  RSpec/MessageSpies:
300
305
  Description: Checks that message expectations are set using spies.
@@ -303,41 +308,41 @@ RSpec/MessageSpies:
303
308
  SupportedStyles:
304
309
  - have_received
305
310
  - receive
306
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MessageSpies
311
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MessageSpies
307
312
 
308
313
  RSpec/MissingExampleGroupArgument:
309
314
  Description: Checks that the first argument to an example group is not empty.
310
315
  Enabled: true
311
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MissingExampleGroupArgument
316
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MissingExampleGroupArgument
312
317
 
313
318
  RSpec/MultipleDescribes:
314
319
  Description: Checks for multiple top level describes.
315
320
  Enabled: true
316
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MultipleDescribes
321
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MultipleDescribes
317
322
 
318
323
  RSpec/MultipleExpectations:
319
324
  Description: Checks if examples contain too many `expect` calls.
320
325
  Enabled: true
321
326
  Max: 1
322
327
  AggregateFailuresByDefault: false
323
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MultipleExpectations
328
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MultipleExpectations
324
329
 
325
330
  RSpec/MultipleSubjects:
326
331
  Description: Checks if an example group defines `subject` multiple times.
327
332
  Enabled: true
328
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MultipleSubjects
333
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/MultipleSubjects
329
334
 
330
335
  RSpec/NamedSubject:
331
336
  Description: Checks for explicitly referenced test subjects.
332
337
  Enabled: true
333
338
  IgnoreSharedExamples: true
334
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/NamedSubject
339
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/NamedSubject
335
340
 
336
341
  RSpec/NestedGroups:
337
342
  Description: Checks for nested example groups.
338
343
  Enabled: true
339
344
  Max: 3
340
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/NestedGroups
345
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/NestedGroups
341
346
 
342
347
  RSpec/NotToNot:
343
348
  Description: Checks for consistent method usage for negating expectations.
@@ -346,47 +351,48 @@ RSpec/NotToNot:
346
351
  - not_to
347
352
  - to_not
348
353
  Enabled: true
349
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/NotToNot
354
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/NotToNot
350
355
 
351
356
  RSpec/OverwritingSetup:
352
357
  Enabled: true
353
358
  Description: Checks if there is a let/subject that overwrites an existing one.
354
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/OverwritingSetup
359
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/OverwritingSetup
355
360
 
356
361
  RSpec/Pending:
357
362
  Enabled: false
358
363
  Description: Checks for any pending or skipped examples.
359
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Pending
364
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Pending
360
365
 
361
366
  RSpec/PredicateMatcher:
362
367
  Description: Prefer using predicate matcher over using predicate method directly.
363
368
  Enabled: true
364
369
  Strict: true
365
370
  EnforcedStyle: inflected
371
+ AllowedExplicitMatchers: []
366
372
  SupportedStyles:
367
373
  - inflected
368
374
  - explicit
369
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/PredicateMatcher
375
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/PredicateMatcher
370
376
 
371
377
  RSpec/ReceiveCounts:
372
378
  Enabled: true
373
379
  Description: Check for `once` and `twice` receive counts matchers usage.
374
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ReceiveCounts
380
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ReceiveCounts
375
381
 
376
382
  RSpec/ReceiveNever:
377
383
  Enabled: true
378
384
  Description: Prefer `not_to receive(...)` over `receive(...).never`.
379
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ReceiveNever
385
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ReceiveNever
380
386
 
381
387
  RSpec/RepeatedDescription:
382
388
  Enabled: true
383
389
  Description: Check for repeated description strings in example groups.
384
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/RepeatedDescription
390
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/RepeatedDescription
385
391
 
386
392
  RSpec/RepeatedExample:
387
393
  Enabled: true
388
394
  Description: Check for repeated examples within example groups.
389
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/RepeatedExample
395
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/RepeatedExample
390
396
 
391
397
  RSpec/ReturnFromStub:
392
398
  Enabled: true
@@ -395,75 +401,75 @@ RSpec/ReturnFromStub:
395
401
  SupportedStyles:
396
402
  - and_return
397
403
  - block
398
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ReturnFromStub
404
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ReturnFromStub
399
405
 
400
406
  RSpec/ScatteredLet:
401
407
  Description: Checks for let scattered across the example group.
402
408
  Enabled: true
403
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ScatteredLet
409
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ScatteredLet
404
410
 
405
411
  RSpec/ScatteredSetup:
406
412
  Description: Checks for setup scattered across multiple hooks in an example group.
407
413
  Enabled: true
408
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ScatteredSetup
414
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/ScatteredSetup
409
415
 
410
416
  RSpec/SharedContext:
411
417
  Description: Checks for proper shared_context and shared_examples usage.
412
418
  Enabled: true
413
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SharedContext
419
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SharedContext
414
420
 
415
421
  RSpec/SharedExamples:
416
422
  Description: Enforces use of string to titleize shared examples.
417
423
  Enabled: true
418
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SharedExamples
424
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SharedExamples
419
425
 
420
426
  RSpec/SingleArgumentMessageChain:
421
427
  Description: Checks that chains of messages contain more than one element.
422
428
  Enabled: true
423
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SingleArgumentMessageChain
429
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SingleArgumentMessageChain
424
430
 
425
431
  RSpec/SubjectStub:
426
432
  Description: Checks for stubbed test subjects.
427
433
  Enabled: true
428
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SubjectStub
434
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/SubjectStub
429
435
 
430
436
  RSpec/UnspecifiedException:
431
437
  Description: Checks for a specified error in checking raised errors.
432
438
  Enabled: true
433
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/UnspecifiedException
439
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/UnspecifiedException
434
440
 
435
441
  RSpec/VerifiedDoubles:
436
442
  Description: Prefer using verifying doubles over normal doubles.
437
443
  Enabled: true
438
444
  IgnoreNameless: true
439
445
  IgnoreSymbolicNames: false
440
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/VerifiedDoubles
446
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/VerifiedDoubles
441
447
 
442
448
  RSpec/VoidExpect:
443
449
  Description: This cop checks void `expect()`.
444
450
  Enabled: true
445
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/VoidExpect
451
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/VoidExpect
446
452
 
447
453
  RSpec/Yield:
448
454
  Description: This cop checks for calling a block within a stub.
449
455
  Enabled: true
450
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Yield
456
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Yield
451
457
 
452
458
  Capybara/CurrentPathExpectation:
453
459
  Description: Checks that no expectations are set on Capybara's `current_path`.
454
460
  Enabled: true
455
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Capybara/CurrentPathExpectation
461
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Capybara/CurrentPathExpectation
456
462
 
457
463
  Capybara/FeatureMethods:
458
464
  Description: Checks for consistent method usage in feature specs.
459
465
  Enabled: true
460
466
  EnabledMethods: []
461
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Capybara/FeatureMethods
467
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Capybara/FeatureMethods
462
468
 
463
469
  FactoryBot/AttributeDefinedStatically:
464
470
  Description: Always declare attribute values as blocks.
465
471
  Enabled: true
466
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/FactoryBot/AttributeDefinedStatically
472
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/FactoryBot/AttributeDefinedStatically
467
473
 
468
474
  FactoryBot/CreateList:
469
475
  Description: Checks for create_list usage.
@@ -472,7 +478,12 @@ FactoryBot/CreateList:
472
478
  SupportedStyles:
473
479
  - create_list
474
480
  - n_times
475
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/FactoryBot/CreateList
481
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/FactoryBot/CreateList
482
+
483
+ FactoryBot/FactoryClassName:
484
+ Description: Use string value when setting the class attribute explicitly.
485
+ Enabled: true
486
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/FactoryBot/FactoryClassName
476
487
 
477
488
  Rails/HttpStatus:
478
489
  Description: Enforces use of symbolic or numeric value to describe HTTP status.
@@ -481,4 +492,4 @@ Rails/HttpStatus:
481
492
  SupportedStyles:
482
493
  - numeric
483
494
  - symbolic
484
- StyleGuide: http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Rails/HttpStatus
495
+ StyleGuide: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Rails/HttpStatus
@@ -6,7 +6,7 @@ module RuboCop
6
6
  module Capybara
7
7
  # Checks that no expectations are set on Capybara's `current_path`.
8
8
  #
9
- # The `have_current_path` matcher (http://www.rubydoc.info/github/
9
+ # The `have_current_path` matcher (https://www.rubydoc.info/github/
10
10
  # teamcapybara/capybara/master/Capybara/RSpecMatchers#have_current_path-
11
11
  # instance_method) should be used on `page` to set expectations on
12
12
  # Capybara's current path, since it uses Capybara's waiting
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module RSpec
6
+ # Avoid opening modules and defining specs within them.
7
+ #
8
+ # @example
9
+ # # bad
10
+ # module MyModule
11
+ # RSpec.describe MyClass do
12
+ # # ...
13
+ # end
14
+ # end
15
+ #
16
+ # # good
17
+ # RSpec.describe MyModule::MyClass do
18
+ # # ...
19
+ # end
20
+ #
21
+ # @see https://github.com/rubocop-hq/rubocop-rspec/issues/735
22
+ class DescribedClassModuleWrapping < Cop
23
+ MSG = 'Avoid opening modules and defining specs within them.'
24
+
25
+ def_node_search :find_rspec_blocks,
26
+ ExampleGroups::ALL.block_pattern
27
+
28
+ def on_module(node)
29
+ find_rspec_blocks(node) do
30
+ add_offense(node)
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RuboCop
4
+ module Cop
5
+ module RSpec
6
+ module FactoryBot
7
+ # Use string value when setting the class attribute explicitly.
8
+ #
9
+ # @example
10
+ # # bad
11
+ # factory :foo, class: Foo do
12
+ # end
13
+ #
14
+ # # good
15
+ # factory :foo, class: 'Foo' do
16
+ # end
17
+ class FactoryClassName < Cop
18
+ MSG = "Pass '%<class_name>s' instead of %<class_name>s."
19
+
20
+ def_node_matcher :class_name, <<~PATTERN
21
+ (send _ :factory _ (hash <(pair (sym :class) $(const ...)) ...>))
22
+ PATTERN
23
+
24
+ def on_send(node)
25
+ class_name(node) do |cn|
26
+ add_offense(cn, message: format(MSG, class_name: cn.const_name))
27
+ end
28
+ end
29
+
30
+ def autocorrect(node)
31
+ lambda do |corrector|
32
+ corrector.replace(node.loc.expression, "'#{node.source}'")
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
@@ -82,7 +82,7 @@ module RuboCop
82
82
  end
83
83
  end
84
84
 
85
- def is_expected_range(source_map) # rubocop:disable PredicateName
85
+ def is_expected_range(source_map) # rubocop:disable Naming/PredicateName
86
86
  Parser::Source::Range.new(
87
87
  source_map.expression.source_buffer,
88
88
  source_map.expression.begin_pos,
@@ -42,7 +42,7 @@ module RuboCop
42
42
  def_node_matcher :skipped_in_metadata?, <<-PATTERN
43
43
  {
44
44
  (send _ _ <#skip_or_pending? ...>)
45
- (send _ _ ... (hash <(pair #skip_or_pending? true) ...>))
45
+ (send _ _ ... (hash <(pair #skip_or_pending? { true str }) ...>))
46
46
  }
47
47
  PATTERN
48
48
 
@@ -138,6 +138,10 @@ module RuboCop
138
138
 
139
139
  private
140
140
 
141
+ def allowed_explicit_matchers
142
+ cop_config.fetch('AllowedExplicitMatchers', []) + BUILT_IN_MATCHERS
143
+ end
144
+
141
145
  def check_explicit(node) # rubocop:disable Metrics/MethodLength
142
146
  predicate_matcher_block?(node) do |_actual, matcher|
143
147
  add_offense(
@@ -178,7 +182,7 @@ module RuboCop
178
182
  def predicate_matcher_name?(name)
179
183
  name = name.to_s
180
184
 
181
- return false if BUILT_IN_MATCHERS.include?(name)
185
+ return false if allowed_explicit_matchers.include?(name)
182
186
 
183
187
  name.start_with?('be_', 'have_') && !name.end_with?('?')
184
188
  end
@@ -107,7 +107,7 @@ module RuboCop
107
107
  MSG = 'Prefer `%<prefer>s` over `%<current>s` ' \
108
108
  'to describe HTTP status code.'
109
109
 
110
- WHITELIST_STATUS = %i[error success missing redirect].freeze
110
+ ALLOWED_STATUSES = %i[error success missing redirect].freeze
111
111
 
112
112
  attr_reader :node
113
113
  def initialize(node)
@@ -115,7 +115,7 @@ module RuboCop
115
115
  end
116
116
 
117
117
  def offensive?
118
- !node.int_type? && !whitelisted_symbol?
118
+ !node.int_type? && !allowed_symbol?
119
119
  end
120
120
 
121
121
  def message
@@ -136,8 +136,8 @@ module RuboCop
136
136
  node.value
137
137
  end
138
138
 
139
- def whitelisted_symbol?
140
- node.sym_type? && WHITELIST_STATUS.include?(node.value)
139
+ def allowed_symbol?
140
+ node.sym_type? && ALLOWED_STATUSES.include?(node.value)
141
141
  end
142
142
  end
143
143
  end
@@ -132,7 +132,10 @@ module RuboCop
132
132
  # @yieldparam subject_name [Symbol] name of subject being defined
133
133
  # @yieldparam parent [RuboCop::Node] parent of subject definition
134
134
  def find_subject(node, parent: nil, &block)
135
- subject(node) { |name| yield(name, parent) }
135
+ # An implicit subject is defined by RSpec when no subject is declared
136
+ subject_name = subject(node) || :subject
137
+
138
+ yield(subject_name, parent) if parent
136
139
 
137
140
  node.each_child_node do |child|
138
141
  find_subject(child, parent: node, &block)
@@ -5,6 +5,7 @@ require_relative 'rspec/capybara/feature_methods'
5
5
 
6
6
  require_relative 'rspec/factory_bot/attribute_defined_statically'
7
7
  require_relative 'rspec/factory_bot/create_list'
8
+ require_relative 'rspec/factory_bot/factory_class_name'
8
9
 
9
10
  begin
10
11
  require_relative 'rspec/rails/http_status'
@@ -25,6 +26,7 @@ require_relative 'rspec/describe_class'
25
26
  require_relative 'rspec/describe_method'
26
27
  require_relative 'rspec/describe_symbol'
27
28
  require_relative 'rspec/described_class'
29
+ require_relative 'rspec/described_class_module_wrapping'
28
30
  require_relative 'rspec/dialect'
29
31
  require_relative 'rspec/empty_example_group'
30
32
  require_relative 'rspec/empty_line_after_example'
@@ -7,7 +7,7 @@ module RuboCop
7
7
  # Builds a YAML config file from two config hashes
8
8
  class ConfigFormatter
9
9
  NAMESPACES = /^(RSpec|Capybara|FactoryBot|Rails)/.freeze
10
- STYLE_GUIDE_BASE_URL = 'http://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/'
10
+ STYLE_GUIDE_BASE_URL = 'https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/'
11
11
 
12
12
  def initialize(config, descriptions)
13
13
  @config = config
@@ -4,7 +4,7 @@ module RuboCop
4
4
  module RSpec
5
5
  # Version information for the RSpec RuboCop plugin.
6
6
  module Version
7
- STRING = '1.36.0'
7
+ STRING = '1.37.0'
8
8
  end
9
9
  end
10
10
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubocop-rspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.36.0
4
+ version: 1.37.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Backus
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2019-09-27 00:00:00.000000000 Z
13
+ date: 2019-11-25 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rubocop
@@ -130,6 +130,7 @@ files:
130
130
  - lib/rubocop/cop/rspec/describe_method.rb
131
131
  - lib/rubocop/cop/rspec/describe_symbol.rb
132
132
  - lib/rubocop/cop/rspec/described_class.rb
133
+ - lib/rubocop/cop/rspec/described_class_module_wrapping.rb
133
134
  - lib/rubocop/cop/rspec/dialect.rb
134
135
  - lib/rubocop/cop/rspec/empty_example_group.rb
135
136
  - lib/rubocop/cop/rspec/empty_line_after_example.rb
@@ -146,6 +147,7 @@ files:
146
147
  - lib/rubocop/cop/rspec/expect_output.rb
147
148
  - lib/rubocop/cop/rspec/factory_bot/attribute_defined_statically.rb
148
149
  - lib/rubocop/cop/rspec/factory_bot/create_list.rb
150
+ - lib/rubocop/cop/rspec/factory_bot/factory_class_name.rb
149
151
  - lib/rubocop/cop/rspec/file_path.rb
150
152
  - lib/rubocop/cop/rspec/focus.rb
151
153
  - lib/rubocop/cop/rspec/hook_argument.rb