Enabled by default | Safe | Supports autocorrection | VersionAdded | VersionChanged |
---|---|---|---|---|
Enabled | Yes | Yes | 1.28 | - |
Always declare attribute values as blocks.
# bad
kind [:active, :rejected].sample
# good
kind { [:active, :rejected].sample }
# bad
closed_at 1.day.from_now
# good
closed_at { 1.day.from_now }
# bad
count 1
# good
count { 1 }
Enabled by default | Safe | Supports autocorrection | VersionAdded | VersionChanged |
---|---|---|---|---|
Enabled | Yes | Yes | 1.25 | - |
Checks for create_list usage.
This cop can be configured using the EnforcedStyle
option
# bad
3.times { create :user }
# good
create_list :user, 3
# good
3.times { |n| create :user, created_at: n.months.ago }
# bad
create_list :user, 3
# good
3.times { create :user }
Name | Default value | Configurable values |
---|---|---|
EnforcedStyle | create_list |
create_list , n_times |
Enabled by default | Safe | Supports autocorrection | VersionAdded | VersionChanged |
---|---|---|---|---|
Enabled | Yes | Yes | 1.37 | - |
Use string value when setting the class attribute explicitly.
This cop would promote faster tests by lazy-loading of application files. Also, this could help you suppress potential bugs in combination with external libraries by avoiding a preload of application files from the factory files.
# bad
factory :foo, class: Foo do
end
# good
factory :foo, class: 'Foo' do
end