Myは、 を使用してメソッド (例: ) をビュー テンプレートにApplicationController
公開します。次に、ビュー ヘルパー ( ) の別のメソッド ( など) でこのメソッドを使用します。sort_direction
helper_method :sort_direction
sort_link
application_helper.rb
sort_link
メソッドを RSpec (in 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>