В модульном тесте мне нужно проверить, правильно ли определены методы псевдонимов, определенные alias_method. Я мог бы просто использовать те же тесты на псевдонимах, которые использовались для их оригиналов, но мне интересно, есть ли более окончательное или эффективное решение. Например, есть ли способ 1) разыменовать псевдоним метода и вернуть его исходное имя, 2) получить и сравнить какой-либо идентификатор или адрес базового метода или 3) получить и сравнить определения методов? Например:
class MyClass
def foo
# do something
end
alias_method :bar, :foo
end
describe MyClass do
it "method bar should be an alias for method foo" do
m = MyClass.new
# ??? identity(m.bar).should == identity(m.foo) ???
end
end
Предложения?