6
我的ApplicationController
通过使用helper_method :sort_direction
向视图模板公开了一种方法(例如sort_direction
)。然后,我用另一种方法(例如sort_link
)查看帮助器(application_helper.rb
)。在模板助手规范中存在控制器辅助方法
当测试sort_link
方法使用RSpec(在application_helper_spec.rb
)我有末梢sort_direction
作为测试似乎运行完全独立于控制器(并且由此通过其视图模板公开的方法)。
不幸的是我找不到如何存根控制器的方法sort_direction
。我总是得到“未定义的方法”。
这里是我试过到目前为止(内application_helper_spec.rb
):
helper.stub(:sort_direction)
controller.stub(:sort_direction)
view.stub(:sort_direction)
self.stub(:sort_direction)
任何建议,我怎么能存根方法?
在这里的错误,我得到:
NoMethodError:
undefined method `sort_direction' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0xb641434c>
这是现在用rspec 3更新:'allow(helper).to receive(:sort_direction)'http://www.relishapp.com/rspec/rspec-mocks/v/3-1/docs/basics/allowing-messages – 2014-12-16 14:22:06