Add more testing for singletons

This commit is contained in:
Carson McDonald
2013-12-25 12:16:53 -05:00
parent c70e2f7099
commit 66747603d5
+34
View File
@@ -258,3 +258,37 @@ assert('Class#inherited') do
assert_equal(Baz, Foo.subclass_name)
end
assert('singleton tests') do
bar = String.new
baz = class << bar
def self.run_baz
200
end
end
assert_false baz.singleton_methods.include? :run_baz
assert_raise(NoMethodError, 'should raise NoMethodError') do
baz.run_baz
end
assert_raise(NoMethodError, 'should raise NoMethodError') do
bar.run_baz
end
baz = class << bar
def self.run_baz
300
end
self
end
assert_true baz.singleton_methods.include? :run_baz
assert_equal 300, baz.run_baz
assert_raise(NoMethodError, 'should raise NoMethodError') do
bar.run_baz
end
end