mirror of
https://github.com/ruby/ruby.git
synced 2025-08-15 13:39:04 +02:00
[Bug #20296] Refine the test
This commit is contained in:
parent
dc146babf4
commit
f23d502805
1 changed files with 18 additions and 17 deletions
|
@ -980,17 +980,27 @@ class Complex_Test < Test::Unit::TestCase
|
|||
}
|
||||
end
|
||||
|
||||
def test_Complex_without_exception
|
||||
assert_complex_without_exception('5x')
|
||||
assert_complex_without_exception(nil)
|
||||
assert_complex_without_exception(Object.new)
|
||||
assert_complex_without_exception(1, nil)
|
||||
assert_complex_without_exception(1, Object.new)
|
||||
def assert_complex_with_exception(error, *args, message: nil)
|
||||
assert_raise(error, message) do
|
||||
Complex(*args, exception: true)
|
||||
end
|
||||
assert_nothing_raised(error, message) do
|
||||
assert_nil(Complex(*args, exception: false))
|
||||
assert_nil($!)
|
||||
end
|
||||
end
|
||||
|
||||
def test_Complex_with_exception
|
||||
assert_complex_with_exception(ArgumentError, '5x')
|
||||
assert_complex_with_exception(TypeError, nil)
|
||||
assert_complex_with_exception(TypeError, Object.new)
|
||||
assert_complex_with_exception(TypeError, 1, nil)
|
||||
assert_complex_with_exception(TypeError, 1, Object.new)
|
||||
|
||||
o = Object.new
|
||||
def o.to_c; raise; end
|
||||
assert_complex_without_exception(o)
|
||||
assert_complex_without_exception(1, o)
|
||||
assert_complex_with_exception(RuntimeError, o)
|
||||
assert_complex_with_exception(TypeError, 1, o)
|
||||
end
|
||||
|
||||
def test_respond
|
||||
|
@ -1249,13 +1259,4 @@ class Complex_Test < Test::Unit::TestCase
|
|||
Complex.polar(1, obj)
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def assert_complex_without_exception(*args)
|
||||
assert_nothing_raised(ArgumentError) do
|
||||
assert_nil(Complex(*args, exception: false))
|
||||
assert_nil($!)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue