0

我正在使用只能在生产中运行的 gem。

skip_after_filter :kachow_auto_include unless Rails.env.production?

我如何测试在 RSpec 的测试和开发过程中是否跳过了这一点。

谢谢

4

1 回答 1

2

存根 Rails.env 上的方法调用,然后调用操作,例如:

it "should run in production environment" do
  Rails.env.stub(:production?) { true }
  MyController.should_receive(:kachow_auto_include)
  get :action_that_triggers_after_filter
end

it "should not run unless in production" do
  Rails.env.stub(:production?) { false }
  MyController.should_not_receive(:kachow_auto_include)
  get :action_that_triggers_after_filter
end
于 2013-01-14T19:23:25.753 回答