我在rails 2.x app中的intializer文件夹中创建了一个common.rb文件。代码在
之下def handle_exception &block
begin
yield block
rescue Exception => ex
logger.error(ex)
HoptoadNotifier.notify(ex)
end
end
对于上面我想写测试用例。我想它应该在功能测试中。如果是这样的话。我不知道应该如何命名,意味着我对(控制器名称<< Base)感到困惑。 rails像其他控制器测试一样运行此测试用例吗?或者我们需要在任何地方添加它吗?由于上面的代码没有继承自控制器等的类。如果你不清楚我的问题,我会添加更多的信息。
答案 0 :(得分:1)
我假设handle_exception
是一个全局函数,所以你可以使用RSpec测试它,如下所示:
require 'spec_helper'
describe "common" do
it "handles exceptions" do
logger.should_receive( :error )
HoptaodNotifier.should_receive( :notify )
handle_exception { raise Exception.new( "This is the error") }
end
end