From 33f0b0ae0b0eeb3bd510cd8525dd0e6076566437 Mon Sep 17 00:00:00 2001 From: nobu Date: Fri, 5 Dec 2003 14:22:36 +0000 Subject: * lib/test/unit/assertions.rb (Test::Unit::Assertions::assert_raises, Test::Unit::Assertions::assert_nothing_raised): use the last argument as message unless non-class object. * test/testunit/test_assertions.rb (test_assert_raises): test for multiple exception list. [ruby-core:01891] * test/testunit/test_assertions.rb (test_assert_nothing_raised): test for non-exception classes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- test/testunit/test_assertions.rb | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'test/testunit/test_assertions.rb') diff --git a/test/testunit/test_assertions.rb b/test/testunit/test_assertions.rb index f62a6186e9..6d0283174c 100644 --- a/test/testunit/test_assertions.rb +++ b/test/testunit/test_assertions.rb @@ -138,6 +138,38 @@ module Test raise "Error" } } + check_fails("Should expect a class of exception, Object.\n is not true.") { + assert_nothing_raised(Object) { + 1 + 1 + } + } + + exceptions = [ArgumentError, TypeError] + exceptions.each do |exc| + check_nothing_fails(true) { + return_value = assert_raises(*exceptions) { + raise exc, "Error" + } + } + check(return_value.instance_of?(exc), "Should have returned #{exc} but was #{return_value.class}") + check(return_value.message == "Error", "Should have returned the correct exception from a successful assert_raises") + end + check_fails("<[ArgumentError, TypeError]> exception expected but none was thrown.") { + assert_raises(*exceptions) { + 1 + 1 + } + } + check_fails(%r{\Afailed assert_raises. +<\[ArgumentError, TypeError\]> exception expected but was +Class: +Message: <"Error"> +---Backtrace--- +.+ +---------------\Z}m) { + assert_raises(ArgumentError, TypeError, "failed assert_raises") { + raise "Error" + } + } end def test_assert_instance_of @@ -272,6 +304,11 @@ module Test rescue ZeroDivisionError end } + check_fails("Should expect a class of exception, Object.\n is not true.") { + assert_nothing_raised(Object) { + 1 + 1 + } + } check_fails(%r{\AException raised:\nClass: \nMessage: <"Error">\n---Backtrace---\n.+\n---------------\Z}m) { assert_nothing_raised { raise "Error" -- cgit v1.2.3