require: rubocop-rspec ######################## ##### LAYOUT RULES ##### ######################## Layout/AlignParameters: EnforcedStyle: with_fixed_indentation Layout/CaseIndentation: EnforcedStyle: end Layout/IndentArray: EnforcedStyle: consistent Layout/IndentHash: EnforcedStyle: consistent Layout/EmptyLinesAroundArguments: Enabled: false Layout/EndAlignment: EnforcedStyleAlignWith: variable Layout/MultilineMethodCallBraceLayout: Enabled: false Layout/MultilineMethodCallIndentation: EnforcedStyle: indented_relative_to_receiver Layout/SpaceAroundEqualsInParameterDefault: Enabled: false Layout/SpaceInsideRangeLiteral: Enabled: false ######################## ###### LINT RULES ###### ######################## Lint/AssignmentInCondition: Enabled: false Lint/Loop: Enabled: false Lint/RescueException: Enabled: false Lint/UnusedMethodArgument: AllowUnusedKeywordArguments: true # Turn this off because any service using .!() errors Lint/Void: Enabled: false ######################## ##### METRIC RULES ##### ######################## Metrics/AbcSize: Enabled: false Metrics/BlockLength: Enabled: false Metrics/ClassLength: Enabled: false Metrics/CyclomaticComplexity: Enabled: false Metrics/LineLength: Enabled: false Metrics/MethodLength: Enabled: false Metrics/ModuleLength: Enabled: false Metrics/ParameterLists: Enabled: false Metrics/ModuleLength: Enabled: false Metrics/PerceivedComplexity: Enabled: false ######################## ##### NAMING RULES ##### ######################## Naming/AccessorMethodName: Enabled: false ######################## ### PERFORMANCE RULES ## ######################## Performance/Casecmp: Enabled: false ######################## #### SECURITY RULES #### ######################## Security/YAMLLoad: Enabled: false ######################## ##### STYLES RULES ##### ######################## Style/Alias: EnforcedStyle: prefer_alias_method Style/AndOr: EnforcedStyle: conditionals Style/BracesAroundHashParameters: Enabled: false Style/ClassAndModuleChildren: Enabled: false Style/ClassVars: Enabled: false Style/DateTime: Enabled: false Style/Documentation: Enabled: false Style/EmptyElse: EnforcedStyle: empty Style/EmptyMethod: EnforcedStyle: expanded Style/FormatString: Enabled: false Style/FormatStringToken: Enabled: false # we want to use this but we should test memory/speed differences first Style/FrozenStringLiteralComment: Enabled: false Style/Lambda: EnforcedStyle: literal Style/LambdaCall: EnforcedStyle: braces Style/MethodMissing: Enabled: false Style/NegatedIf: EnforcedStyle: postfix Style/NumericLiteralPrefix: EnforcedOctalStyle: zero_only Style/NumericPredicate: EnforcedStyle: comparison Style/PercentLiteralDelimiters: Enabled: false Style/RegexpLiteral: AllowInnerSlashes: true Style/RescueModifier: Enabled: false Style/RescueStandardError: Enabled: false # turn this on after servers are all updated to Ruby 2.3.6 Style/SafeNavigation: Enabled: false Style/StructInheritance: Enabled: false Style/SymbolArray: EnforcedStyle: percent ######################## ###### SPEC RULES ###### ######################## FactoryBot/DynamicAttributeDefinedStatically: Enabled: false RSpec/AnyInstance: Enabled: false RSpec/ContextWording: Enabled: false RSpec/DescribedClass: Enabled: false RSpec/DescribeClass: Enabled: false RSpec/ExampleLength: Enabled: false RSpec/ExampleWording: Enabled: false RSpec/ExpectInHook: Enabled: false RSpec/FilePath: Enabled: false RSpec/MessageChain: Enabled: false RSpec/MessageSpies: EnforcedStyle: receive RSpec/MultipleExpectations: Enabled: false RSpec/NamedSubject: Enabled: false RSpec/NestedGroups: Enabled: false RSpec/SubjectStub: Enabled: false RSpec/VerifiedDoubles: Enabled: false Style/MixinUsage: Enabled: false