* lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises):
allow multiple exception list. [ruby-core:01884] * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_nothing_raised): check whether arguments are subclass of Exception. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5112 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
e78a9cdcdb
commit
01d06638b9
@ -1,3 +1,11 @@
|
|||||||
|
Fri Dec 5 02:49:35 2003 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
|
* lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises):
|
||||||
|
allow multiple exception list. [ruby-core:01884]
|
||||||
|
|
||||||
|
* lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_nothing_raised):
|
||||||
|
check whether arguments are subclass of Exception.
|
||||||
|
|
||||||
Thu Dec 4 21:50:07 2003 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
Thu Dec 4 21:50:07 2003 Nobuyoshi Nakada <nobu@ruby-lang.org>
|
||||||
|
|
||||||
* lib/drb/drb.rb (DRb::DRbMessage::send_request, send_reply):
|
* lib/drb/drb.rb (DRb::DRbMessage::send_request, send_reply):
|
||||||
|
@ -58,23 +58,29 @@ EOT
|
|||||||
|
|
||||||
# Passes if block raises exception.
|
# Passes if block raises exception.
|
||||||
public
|
public
|
||||||
def assert_raises(expected_exception_klass, message="")
|
def assert_raises(*args)
|
||||||
_wrap_assertion do
|
_wrap_assertion do
|
||||||
assert_instance_of(Class, expected_exception_klass, "Should expect a class of exception")
|
if Class === args.last and Exception >= args.last
|
||||||
|
message = ""
|
||||||
|
else
|
||||||
|
message = args.pop
|
||||||
|
end
|
||||||
|
args.each do |klass|
|
||||||
|
assert(Exception >= klass, "Should expect a class of exception")
|
||||||
|
end
|
||||||
|
expected = args.size == 1 ? args.first : args
|
||||||
actual_exception = nil
|
actual_exception = nil
|
||||||
full_message = build_message(message, "<?> exception expected but none was thrown.", expected_exception_klass)
|
full_message = build_message(message, "<?> exception expected but none was thrown.", expected)
|
||||||
assert_block(full_message) do
|
assert_block(full_message) do
|
||||||
thrown = false
|
|
||||||
begin
|
begin
|
||||||
yield
|
yield
|
||||||
rescue Exception => thrown_exception
|
rescue Exception => actual_exception
|
||||||
actual_exception = thrown_exception
|
break
|
||||||
thrown = true
|
|
||||||
end
|
end
|
||||||
thrown
|
false
|
||||||
end
|
end
|
||||||
full_message = build_message(message, "<?> exception expected but was\n?", expected_exception_klass, actual_exception)
|
full_message = build_message(message, "<?> exception expected but was\n?", expected, actual_exception)
|
||||||
assert_block(full_message) { expected_exception_klass == actual_exception.class }
|
assert_block(full_message) { args.include?(actual_exception.class) }
|
||||||
actual_exception
|
actual_exception
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -176,10 +182,14 @@ EOT
|
|||||||
public
|
public
|
||||||
def assert_nothing_raised(*args)
|
def assert_nothing_raised(*args)
|
||||||
_wrap_assertion do
|
_wrap_assertion do
|
||||||
message = ""
|
if Class === args.last and Exception >= args.last
|
||||||
if (!args[-1].instance_of?(Class))
|
message = ""
|
||||||
|
else
|
||||||
message = args.pop
|
message = args.pop
|
||||||
end
|
end
|
||||||
|
args.each do |klass|
|
||||||
|
assert(Exception >= klass, "Should expect a class of exception")
|
||||||
|
end
|
||||||
begin
|
begin
|
||||||
yield
|
yield
|
||||||
rescue Exception => e
|
rescue Exception => e
|
||||||
|
Loading…
x
Reference in New Issue
Block a user