Sha256: 61a56c2d7cb4049d5c4f019be6f0c5f54696227f0173c6503d31b257c75fae3b
Contents?: true
Size: 1.2 KB
Versions: 2
Compression:
Stored size: 1.2 KB
Contents
# frozen_string_literal: true module RuboCop module Cop module RSpec # Checks that only one `it_behaves_like` style is used. # # @example when configuration is `EnforcedStyle: it_behaves_like` # # bad # it_should_behave_like 'a foo' # # # good # it_behaves_like 'a foo' # # @example when configuration is `EnforcedStyle: it_should_behave_like` # # bad # it_behaves_like 'a foo' # # # good # it_should_behave_like 'a foo' class ItBehavesLike < Base extend AutoCorrector include ConfigurableEnforcedStyle MSG = 'Prefer `%<replacement>s` over `%<original>s` when including ' \ 'examples in a nested context.' def_node_matcher :example_inclusion_offense, '(send _ % ...)' def on_send(node) example_inclusion_offense(node, alternative_style) do add_offense(node) do |corrector| corrector.replace(node.loc.selector, style.to_s) end end end private def message(_node) format(MSG, replacement: style, original: alternative_style) end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
rubocop-rspec-2.1.0 | lib/rubocop/cop/rspec/it_behaves_like.rb |
rubocop-rspec-2.0.1 | lib/rubocop/cop/rspec/it_behaves_like.rb |