diff options
author | shugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-11-18 01:14:54 +0000 |
---|---|---|
committer | shugo <shugo@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2009-11-18 01:14:54 +0000 |
commit | 4e073fbb93ea74a14c617127eeee928634aa875d (patch) | |
tree | 9d5638a7a8957a7b534656335c361e88f62f1be4 /test/ruby | |
parent | 63c3b2d283a482b96b20fa8d78f3098786123a68 (diff) | |
download | ruby-4e073fbb93ea74a14c617127eeee928634aa875d.tar.gz |
forgot to add test_undef.rb in the previous revision.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25832 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/ruby')
-rw-r--r-- | test/ruby/test_undef.rb | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/test/ruby/test_undef.rb b/test/ruby/test_undef.rb new file mode 100644 index 0000000000..e1c98076c0 --- /dev/null +++ b/test/ruby/test_undef.rb @@ -0,0 +1,37 @@ +require 'test/unit' + +class TestUndef < Test::Unit::TestCase + class Undef0 + def foo + "foo" + end + undef foo + end + + class Undef1 + def bar + "bar" + end + end + + class Undef2 < Undef1 + undef bar + end + + def test_undef + x = Undef0.new + assert_raise(NoMethodError) { x.foo } + y = Undef1.new + assert_equal "bar", y.bar + z = Undef2.new + assert_raise(NoMethodError) { z.foo } + end + + def test_special_const_undef + assert_raise(TypeError) do + 1.instance_eval do + undef to_s + end + end + end +end |