Skip to content

Instantly share code, notes, and snippets.

@Slike9
Last active August 29, 2015 14:21
Show Gist options
  • Save Slike9/181794bd6ba5b7b3eda8 to your computer and use it in GitHub Desktop.
Save Slike9/181794bd6ba5b7b3eda8 to your computer and use it in GitHub Desktop.
warden controller test helper
require 'warden/test/helpers'
# Usage:
# rspec:
# config.include Helpers::Controllers::Auth, type: :controller
#
module Helpers
module Controllers
module Auth
extend ActiveSupport::Concern
included do
before do
warden_manager = Warden::Manager.new(nil)
warden_proxy = Warden::Proxy.new(request.env, warden_manager)
request.env['warden'] = warden_proxy
end
end
def sign_in(user=nil)
user ||= build :user
request.env['warden'].set_user(user)
end
def current_user
controller.current_user
end
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment