require: rubocop-rspec AllCops: TargetRubyVersion: 2.3 Exclude: - 'vendor/**/*' - 'vendored/**/*' - 'acceptance/vendor/**/*' - 'modules/**/*' - 'spec/volumes/**/*' # Checks for if and unless statements that would fit on one line if written as a # modifier if/unless. Style/IfUnlessModifier: Enabled: false Style/WordArray: Enabled: false Style/AccessModifierDeclarations: Enabled: false Style/StringLiterals: Enabled: false Style/Documentation: Enabled: false Style/BlockDelimiters: Enabled: false Style/NumericLiterals: Enabled: false Style/NumericPredicate: Enabled: false Layout/EmptyLineAfterGuardClause: Enabled: false Layout/IndentHeredoc: Enabled: false Layout/ClosingHeredocIndentation: Enabled: false Style/GuardClause: Enabled: false Style/MultilineBlockChain: Enabled: false Style/DoubleNegation: Enabled: false Style/SafeNavigation: Enabled: false # Disable nearly all Metrics checks. These seem better off left to judgement. Metrics/AbcSize: Enabled: false Metrics/BlockLength: Enabled: false Metrics/BlockNesting: Enabled: false Metrics/ClassLength: Enabled: false Metrics/CyclomaticComplexity: Enabled: false Metrics/LineLength: Max: 120 Metrics/MethodLength: Enabled: false Metrics/ModuleLength: Enabled: false Metrics/ParameterLists: Enabled: false Metrics/PerceivedComplexity: Enabled: false # Disable some of the stricter rspec tests, not useful for the webmock/sinatra tests RSpec/MultipleExpectations: Enabled: false RSpec/ExampleLength: Enabled: false # see: https://github.com/rubocop-hq/rubocop/issues/4222 Lint/AmbiguousBlockAssociation: Exclude: - "spec/**/*" # complex code is complex :-( RSpec/NestedGroups: Enabled: true Max: 5