Bug #6891 ยป test.patch
test/ruby/test_module.rb | ||
---|---|---|
assert_equal([:@@bar, :@@foo], m2.class_variables(true))
|
||
assert_equal([:@@bar], m2.class_variables(false))
|
||
end
|
||
def test_extend_module_with_protected_method
|
||
list = []
|
||
x = Class.new {
|
||
extend Module.new {
|
||
protected
|
||
define_method(:inherited) do |klass|
|
||
list << "protected"
|
||
super(klass)
|
||
end
|
||
}
|
||
extend Module.new {
|
||
define_method(:inherited) do |klass|
|
||
list << "public"
|
||
super(klass)
|
||
end
|
||
}
|
||
}
|
||
Class.new(x)
|
||
assert_equal ['public', 'protected'], list
|
||
end
|
||
end
|