【发布时间】:2014-10-08 19:12:46
【问题描述】:
如何从包含的模块中存根 :super 方法。我有以下控制器:
class ImportsController < BaseController
include ImportBackend
def import_from_file
super
rescue TransferPreview::Error => exc
flash[:error] = "Some String"
redirect_to imports_path
end
end
和 importBackend 模块:
module ImportBackend
def import_from_file
//something
end
end
我想测试那个控制器。我的问题是如何在 ImportBackend 中存根方法以引发错误?我尝试了几种解决方案,但没有任何效果:
ImportBackend.stub(:import_from_file).and_raise(Transfer::Error)
controller.stub(:super).and_raise(Transfer::Error)
controller.stub(:import_from_file).and_raise(Transfer::Error)
感谢所有回答。
【问题讨论】: