.rubocop.yml

Summary

Maintainability
Test Coverage
# Offense count: 144
# Cop supports --auto-correct.
# Configuration parameters: AllowAdjacentOneLineDefs, NumberOfEmptyLines.
Layout/EmptyLineBetweenDefs:
  Exclude:
    - 'lib/watir/elements/html_elements.rb'
    - 'lib/watir/elements/svg_elements.rb'

# Offense count: 2
# Cop supports --auto-correct.
Layout/EmptyLines:
  Exclude:
    - 'lib/watir/elements/html_elements.rb'
    - 'lib/watir/elements/svg_elements.rb'

# Offense count: 2
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
Layout/EmptyLinesAroundModuleBody:
  Exclude:
    - 'lib/watir/elements/html_elements.rb'
    - 'lib/watir/elements/svg_elements.rb'

# Offense count: 85
# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces.
# SupportedStyles: space, no_space, compact
# SupportedStylesForEmptyBraces: space, no_space
Layout/SpaceInsideHashLiteralBraces:
  EnforcedStyle: no_space

# Offense count: 1
Lint/HandleExceptions:
  Exclude:
    - 'lib/watirspec.rb'

Lint/UnifiedInteger:
  Exclude:
  - 'lib/watir/locators/element/selector_builder.rb'

# Configuration parameters: CountComments, ExcludedMethods.
# ExcludedMethods: refine
Metrics/BlockLength:
  Exclude:
    - 'spec/**/*'
    - 'support/doctest_helper.rb'
    - 'watir.gemspec'
    - 'Rakefile'

## Configuration parameters: CountComments.
Metrics/ModuleLength:
  Exclude:
    - 'lib/watir/elements/html_elements.rb'
    - 'lib/watir/elements/svg_elements.rb'

# Configuration parameters: CountComments.
Metrics/MethodLength:
  Max: 18
  Exclude:
  - 'lib/watir/locators/element/selector_builder.rb'
  - 'lib/watir/locators/element/selector_builder/xpath.rb'
  - 'lib/watir/locators/element/selector_builder/regexp_disassembler.rb'

# Configuration parameters: CountComments.
Metrics/ClassLength:
  Max: 93
  Exclude:
    - 'lib/watir/capabilities.rb'
    - 'lib/watir/locators/element/matcher.rb'
    - 'lib/watir/locators/element/selector_builder.rb'
    - 'lib/watir/locators/element/selector_builder/xpath.rb'
    - 'lib/watir/browser.rb'
    - 'lib/watir/window.rb'
    - 'lib/watir/elements/element.rb'
    - 'lib/watir/elements/select.rb'
    - 'lib/watir/generator/base/spec_extractor.rb'
    - 'lib/watir/element_collection.rb'

Metrics/PerceivedComplexity:
  Max: 10

Metrics/CyclomaticComplexity:
  Max: 8
  Exclude:
  - 'lib/watir/locators/element/selector_builder.rb'

Metrics/AbcSize:
  Max: 21
  Exclude:
    - 'lib/watir/locators/element/selector_builder.rb'
    - 'lib/watir/locators/element/selector_builder/regexp_disassembler.rb'
    - 'lib/watir/locators/element/selector_builder/xpath.rb'
    - 'lib/watir/locators/element/locator.rb'
    - 'lib/watir/generator/base/generator.rb'
    - 'lib/watir/generator/base/visitor.rb'
    - 'spec/locator_spec_helper.rb'

# TODO: fix with Watir 7
# Configuration parameters: CountKeywordArgs.
Metrics/ParameterLists:
  Exclude:
    - 'lib/watir/wait.rb'

# Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
# URISchemes: http, https
Metrics/LineLength:
  Max: 120

# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, IgnoredMethods.
# SupportedStyles: line_count_based, semantic, braces_for_chaining
# ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
# FunctionalMethods: let, let!, subject, watch
# IgnoredMethods: lambda, proc, it
Style/BlockDelimiters:
  EnforcedStyle: braces_for_chaining

Style/CommentedKeyword:
  Enabled: false

Style/DoubleNegation:
  Enabled: false

## Configuration parameters: AllowedVariables.
Style/GlobalVars:
  AllowedVariables:
    - $browser

Style/RegexpLiteral:
  Exclude:
    - 'spec/watirspec/selector_builder/element_spec.rb'

### Cop supports --auto-correct.
### Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
## SupportedStyles: single_quotes, double_quotes
Style/StringLiterals:
  Exclude:
    - 'lib/watir/elements/html_elements.rb'
    - 'lib/watir/elements/svg_elements.rb'

Style/MethodCallWithoutArgsParentheses:
  Enabled: false

# TODO: I can't tell if this applies
## Configuration parameters: EnforcedStyle.
## SupportedStyles: annotated, template, unannotated
Style/FormatStringToken:
  Exclude:
    - 'lib/watir/browser.rb'
    - 'lib/watir/locators/text_field/selector_builder/xpath.rb'
    - 'lib/watir/window.rb'

Style/Documentation:
  Enabled: false

# Cop supports --auto-correct.
# Configuration parameters: EnforcedStyle.
# SupportedStyles: when_needed, always, never
Style/FrozenStringLiteralComment:
  Enabled: false

Naming/FileName:
  Exclude:
    - 'lib/watir-webdriver.rb'