表題の通り、Rspec内でaction名に左右されるメソッドをテストする場合、下記の様にmockオブジェクトでaction_nameの返却値を設定してやることで実施できます。
sample_helper.rb
module SampleHelper
def get
action_name
end
end
sample_helper_spec.rb
require 'spec_helper'
describe SampleHelper do
describe '#get' do
context 'アクション=showの場合' do
before do
allow(helper).to receive(:action_name).and_return('show')
end
it 'show が返却される' do
actual = helper.get
expected = 'show'
expect(actual).to eq(expected)
end
end
end
end