Method: Test::Unit::Assertions#assert_raise
- Defined in:
- lib/test/unit/assertions.rb
#assert_raise(*args, &block) ⇒ Object Also known as: assert_raises
Passes if the block raises one of the expected exceptions. When an expected exception is an Exception object, passes if expected_exception == actual_exception.
264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 |
# File 'lib/test/unit/assertions.rb', line 264 def assert_raise(*args, &block) assert_expected_exception = Proc.new do |*_args| , assert_exception_helper, actual_exception = _args expected = assert_exception_helper.expected_exceptions diff = AssertionMessage.delayed_diff(expected, actual_exception) = (, "<?> exception expected but was\n<?>.?", expected, actual_exception, diff) begin assert_block() do expected == [] or assert_exception_helper.expected?(actual_exception) end rescue AssertionFailedError => failure _set_failed_information(failure, expected, actual_exception, ) raise failure # For JRuby. :< end end _assert_raise(assert_expected_exception, *args, &block) end |