このコントローラースペックファイルがあります。
describe BriefNotesController do
render_views
before(:all) do
@customer=Factory(:customer)
@project=Factory(:project_started, :owner => @customer)
end
context 'get :new' do
it 'should redirect to login page for not signed in users' do
get :new, :project_id => @project.id
response.should new_user_session_path
end
end
context 'get :create' do
it 'should redirect to login page for not signed in users' do
post :create, {:project_id => @project.to_param, :brief_note => Factory.attributes_for(:brief_note, :project_id => @project.id)}
response.should redirect_to new_user_session_path
end
end
これらのテストでは、アクションごとに同じ認証テストを繰り返すため、ドライな方法で再コーディングしたいと考えてshared_examples_for
います。メソッドでこのテストを再コーディングしようとしましたが、処理しませんでした。