mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
test_object.rb: add more checks
* test/ruby/test_object.rb (test_remove_instance_variable): refine failure message and check the name. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
0a9f20ae02
commit
a96626e6da
1 changed files with 6 additions and 4 deletions
|
@ -236,17 +236,19 @@ class TestObject < Test::Unit::TestCase
|
|||
'T_CLASS,T_MODULE' => Class.new(Object),
|
||||
'generic ivar' => '',
|
||||
}.each do |desc, o|
|
||||
assert_raises(NameError, "#{desc} iv removal raises before set") do
|
||||
e = assert_raise(NameError, "#{desc} iv removal raises before set") do
|
||||
o.remove_instance_variable(:@foo)
|
||||
end
|
||||
assert_equal([o, :@foo], [e.receiver, e.name])
|
||||
o.instance_eval { @foo = :foo }
|
||||
assert_equal(:foo, o.remove_instance_variable(:@foo),
|
||||
"#{desc} iv removal returns original value")
|
||||
assert_equal(false, o.instance_variable_defined?(:@foo),
|
||||
"#{desc} iv removed succesfully")
|
||||
assert_raises(NameError, "#{desc} iv removal raises after removal") do
|
||||
assert_not_send([o, :instance_variable_defined?, :@foo],
|
||||
"#{desc} iv removed succesfully")
|
||||
e = assert_raise(NameError, "#{desc} iv removal raises after removal") do
|
||||
o.remove_instance_variable(:@foo)
|
||||
end
|
||||
assert_equal([o, :@foo], [e.receiver, e.name])
|
||||
end
|
||||
end
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue