]> git.openstreetmap.org Git - rails.git/blobdiff - .rubocop.yml
Use implicit style for associations with factory overrides
[rails.git] / .rubocop.yml
index 1ae01086a36590d17fcb82ec3578b495fedfa618..f8060f9484cc72939fd84e9ac2f94a98804468b4 100644 (file)
@@ -1,17 +1,27 @@
 inherit_from: .rubocop_todo.yml
 
 require:
 inherit_from: .rubocop_todo.yml
 
 require:
+  - rubocop-capybara
+  - rubocop-factory_bot
+  - rubocop-minitest
   - rubocop-performance
   - rubocop-rails
   - rubocop-performance
   - rubocop-rails
+  - rubocop-rake
 
 AllCops:
 
 AllCops:
-  TargetRubyVersion: 2.5
+  TargetRubyVersion: 3.0
+  NewCops: enable
   Exclude:
     - 'vendor/**/*'
 
 Rails:
   Enabled: true
 
   Exclude:
     - 'vendor/**/*'
 
 Rails:
   Enabled: true
 
+# Config can be removed after https://github.com/rubocop/rubocop-factory_bot/issues/53
+FactoryBot/AssociationStyle:
+  Include:
+    - 'test/factories/**/*'
+
 Layout/ExtraSpacing:
   AllowForAlignment: true
 
 Layout/ExtraSpacing:
   AllowForAlignment: true
 
@@ -29,10 +39,12 @@ Metrics/ClassLength:
   Exclude:
     - 'test/**/*'
 
   Exclude:
     - 'test/**/*'
 
+Metrics/ModuleLength:
+  Max: 150
+
 Naming/FileName:
   Exclude:
     - 'script/deliver-message'
 Naming/FileName:
   Exclude:
     - 'script/deliver-message'
-    - 'script/locale/reload-languages'
     - 'script/update-spam-blocks'
 
 Naming/MethodParameterName:
     - 'script/update-spam-blocks'
 
 Naming/MethodParameterName:
@@ -50,7 +62,7 @@ Rails/HasManyOrHasOneDependent:
 Rails/HttpPositionalArguments:
   Enabled: false
 
 Rails/HttpPositionalArguments:
   Enabled: false
 
-Rails/InverseOf:
+Rails/ReflectionClassName:
   Enabled: false
 
 Rails/SkipsModelValidations:
   Enabled: false
 
 Rails/SkipsModelValidations:
@@ -58,14 +70,12 @@ Rails/SkipsModelValidations:
     - 'db/migrate/*.rb'
     - 'app/controllers/users_controller.rb'
 
     - 'db/migrate/*.rb'
     - 'app/controllers/users_controller.rb'
 
-Style/BracesAroundHashParameters:
-  EnforcedStyle: context_dependent
-
 Style/Documentation:
   Enabled: false
 
 Style/FormatStringToken:
 Style/Documentation:
   Enabled: false
 
 Style/FormatStringToken:
-  EnforcedStyle: template
+  Exclude:
+    - 'config/routes.rb'
 
 Style/IfInsideElse:
   Enabled: false
 
 Style/IfInsideElse:
   Enabled: false
@@ -73,12 +83,21 @@ Style/IfInsideElse:
 Style/GuardClause:
   Enabled: false
 
 Style/GuardClause:
   Enabled: false
 
+Style/HashEachMethods:
+  Enabled: true
+
 Style/HashSyntax:
   EnforcedStyle: hash_rockets
   Exclude:
     - 'lib/tasks/testing.rake'
     - 'config/initializers/wrap_parameters.rb'
 
 Style/HashSyntax:
   EnforcedStyle: hash_rockets
   Exclude:
     - 'lib/tasks/testing.rake'
     - 'config/initializers/wrap_parameters.rb'
 
+Style/HashTransformKeys:
+  Enabled: true
+
+Style/HashTransformValues:
+  Enabled: true
+
 Style/MixinUsage:
   Exclude:
     - 'bin/setup'
 Style/MixinUsage:
   Exclude:
     - 'bin/setup'