class RuboCop::Cop::Style::RedundantException

This cop checks for RuntimeError as the argument of raise/fail.

It checks for code like this:

@example

# Bad
raise RuntimeError, 'message'

# Bad
raise RuntimeError.new('message')

# Good
raise 'message'

Constants

MSG_1
MSG_2

Public Instance Methods

autocorrect(node) click to toggle source

Switch `raise RuntimeError, 'message'` to `raise 'message'`, and `raise RuntimeError.new('message')` to `raise 'message'`.

# File lib/rubocop/cop/style/redundant_exception.rb, line 30
def autocorrect(node)
  exploded?(node) do |command, message|
    return lambda do |corrector|
      corrector.replace(node.source_range,
                        "#{command} #{message.source}")
    end
  end
  compact?(node) do |new_call, message|
    lambda do |corrector|
      corrector.replace(new_call.source_range, message.source)
    end
  end
end
on_send(node) click to toggle source
# File lib/rubocop/cop/style/redundant_exception.rb, line 23
def on_send(node)
  exploded?(node) { return add_offense(node, message: MSG_1) }
  compact?(node) { add_offense(node, message: MSG_2) }
end