# File test/unit/assertions.rb, line 60 def assert_raises(expected_exception_klass, message="") _wrap_assertion do assert_instance_of(Class, expected_exception_klass, "Should expect a class of exception") actual_exception = nil full_message = build_message(message, expected_exception_klass) do |arg| "<#{arg}> exception expected but none was thrown" end assert_block(full_message) do thrown = false begin yield rescue Exception => thrown_exception actual_exception = thrown_exception thrown = true end thrown end full_message = build_message(message, expected_exception_klass, actual_exception) do |arg1, arg2| "<#{arg1}> exception expected but was\n" + arg2 end assert_block(full_message) { expected_exception_klass == actual_exception.class } actual_exception end end