class RuboCop::Cop::RSpec::EmptyLineAfterSubject
Checks if there is an empty line after subject block.
@example
# bad subject(:obj) { described_class } let(:foo) { bar } # good subject(:obj) { described_class } let(:foo) { bar }
Constants
- MSG
Public Instance Methods
autocorrect(node)
click to toggle source
# File lib/rubocop/cop/rspec/empty_line_after_subject.rb, line 33 def autocorrect(node) ->(corrector) { corrector.insert_after(node.loc.end, "\n") } end
on_block(node)
click to toggle source
# File lib/rubocop/cop/rspec/empty_line_after_subject.rb, line 22 def on_block(node) return unless subject?(node) && !in_spec_block?(node) return if node.equal?(node.parent.children.last) send_line = node.loc.end.line next_line = processed_source[send_line] return if next_line.blank? add_offense(node, location: :expression, message: MSG) end
Private Instance Methods
in_spec_block?(node)
click to toggle source
# File lib/rubocop/cop/rspec/empty_line_after_subject.rb, line 39 def in_spec_block?(node) node.each_ancestor(:block).any? do |ancestor| Examples::ALL.include?(ancestor.method_name) end end