class RuboCop::Cop::RSpec::EmptyLineAfterSubject

let(:foo) { bar }
subject(:obj) { described_class }
# good
let(:foo) { bar }
subject(:obj) { described_class }
# bad
@example
Checks if there is an empty line after subject block.

def autocorrect(node)

def autocorrect(node)
  ->(corrector) { corrector.insert_after(node.loc.end, "\n") }
end

def in_spec_block?(node)

def in_spec_block?(node)
  node.each_ancestor(:block).any? do |ancestor|
    Examples::ALL.include?(ancestor.method_name)
  end
end

def on_block(node)

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