Basic認証かけたアクションのテストについて書きます。
ModuleのAuthHelper
module AuthHelper
def basic_login
@env ||= {} #またはenv
user = 'arekore'
pw = 'passarekore'
@env['HTTP_AUTHORIZATION'] = ActionController::HttpAuthentication::Basic.encode_credentials(user,pw)
end
end
ユーザ名とパスワードはご自分のに読み替えてください。
ただし@request.envに入れてあげないと認証は通りません。
module AuthHelper
def basic_login
@request.env ||= {}
user = 'arekore'
pw = 'passarekore'
@request.env['HTTP_AUTHORIZATION'] = ActionController::HttpAuthentication::Basic.encode_credentials(user,pw)
end
end
これなら通ります。
spec_helperに以下を追記して各specで呼び出すといいです。
RSpec.configure do |config|
config.include AuthHelper, :type => :controller
end