Sha256: 838b21b327af6e3c2288b53858becac74be62425120cda13a6163abb4bbb8043
Contents?: true
Size: 1.25 KB
Versions: 14
Compression:
Stored size: 1.25 KB
Contents
# frozen_string_literal: true module RuboCop module Cop module Salsify # Use ".<class method>" instead of "self.<class method>" in RSpec example # group descriptions. # # @example # # # good # describe ".does_stuff" do # ... # end # # # bad # describe "self.does_stuff" do # ... # end class RspecDotNotSelfDot < RuboCop::Cop::RSpec::Base extend RuboCop::Cop::AutoCorrector SELF_DOT_REGEXP = /["']self\./.freeze MSG = 'Use ".<class method>" instead of "self.<class method>" for example group description.' def_node_matcher :example_group_match, <<-PATTERN (send _ #ExampleGroups.all $_ ...) PATTERN def on_send(node) example_group_match(node) do |doc| next unless SELF_DOT_REGEXP.match?(doc.source) add_offense(doc) do |corrector| corrector.remove(Parser::Source::Range.new(doc.source_range.source_buffer, doc.source_range.begin_pos + 1, doc.source_range.begin_pos + 5)) end end end end end end end
Version data entries
14 entries across 14 versions & 1 rubygems