小编mny*_*len的帖子

测试before_filter会被调用

如何测试当控制器中的操作被访问时,控制器的before_filter将被执行?

before_filter在单独的示例组中进行测试,因此不需要为依赖于before_filter的所有操作复制测试.

如果我有

controller.should_receive(:my_before_filter)
Run Code Online (Sandbox Code Playgroud)

在我的例子中,它工作正常.但是,具有上述期望似乎导致逻辑输入my_before_filter未被执行(它应该分配实例变量).

如何克服这个限制或模拟my_before_filter的行为(它在控制器上设置实例变量)?或者有更好的方法来做到这一点?


现在很清楚我做错了,我仍然想知道如何模拟设置实例变量的before_filter的行为.当然必须在控制器规范中做到这一点?

rspec ruby-on-rails before-filter

5
推荐指数
2
解决办法
5881
查看次数

标签 统计

before-filter ×1

rspec ×1

ruby-on-rails ×1