class RuboCop::Cop::Minitest::UnspecifiedException

This cop checks for a specified error in `assert_raises`.

@example

# bad
assert_raises { raise FooException }
assert_raises('This should have raised') { raise FooException }

# good
assert_raises(FooException) { raise FooException }
assert_raises(FooException, 'This should have raised') { raise FooException }

Constants

MSG

Public Instance Methods

on_block(block_node) click to toggle source
# File lib/rubocop/cop/minitest/unspecified_exception.rb, line 20
def on_block(block_node)
  node = block_node.send_node
  return unless node.method?(:assert_raises)

  add_offense(node) if unspecified_exception?(node)
end

Private Instance Methods

unspecified_exception?(node) click to toggle source
# File lib/rubocop/cop/minitest/unspecified_exception.rb, line 29
def unspecified_exception?(node)
  args = node.arguments
  args.empty? || (args.size == 1 && args[0].str_type?)
end