【发布时间】:2013-04-06 21:39:20
【问题描述】:
我正在通过创建一个扩展到库类的子类来扩展现有库。
在子类中,我能够测试initialize 方法中的大部分功能,但无法模拟super 调用。子类如下所示。
class Child < SomeLibrary
def initialize(arg)
validate_arg(arg)
do_something
super(arg)
end
def validate_arg(arg)
# do the validation
end
def do_something
@setup = true
end
end
如何编写 rspec 测试(使用 mocha)以便可以模拟 super 调用?请注意,我正在 Child 类中测试 initialize 方法的功能。当提供额外参数时,我是否必须创建不调用super 的单独代码路径?
【问题讨论】: