require: rubocop-rspec Rails: Enabled: true Documentation: Enabled: true AllCops: DisplayCopNames: true TargetRubyVersion: 2.5 Exclude: - bin/**/* - vendor/**/* - build/**/* - gemfiles/**/* Metrics/BlockLength: Exclude: - Rakefile - '*.gemspec' - spec/**/*.rb - '**/*.rake' - doc/**/*.rb # Document all the things. Style/DocumentationMethod: Enabled: true RequireForNonPublicMethods: true # It's a deliberate idiom in RSpec. # See: https://github.com/bbatsov/rubocop/issues/4222 Lint/AmbiguousBlockAssociation: Exclude: - "spec/**/*" # Because +expect_any_instance_of().to have_received()+ is not # supported with the +with(hash_including)+ matchers RSpec/MessageSpies: EnforcedStyle: receive # Because nesting makes sense here to group the feature tests # more effective. This increases maintainability. RSpec/NestedGroups: Max: 4 # Disable regular Rails spec paths. RSpec/FilePath: Enabled: false # Because we just implemented the ActiveRecord API. Rails/SkipsModelValidations: Enabled: false # We do not have a full Rails application here. Rails/ApplicationRecord: Enabled: false # We do not have a full Rails application here. Rails/ApplicationJob: Enabled: false # Because +enqueued_jobs+ is a method not a memoized variable, # so when first evaluated it won't change. RSpec/ExpectChange: Enabled: false