2023-02-01 08:30:09 -05:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
|
|
|
|
|
# https://makandracards.com/makandra/37161-rspec-devise-how-to-sign-in-users-in-request-specs
|
|
|
|
|
|
|
|
|
|
module DeviseRequestSpecHelpers
|
|
|
|
|
include Warden::Test::Helpers
|
|
|
|
|
|
|
|
|
|
def sign_in(resource_or_scope, resource = nil)
|
|
|
|
|
resource ||= resource_or_scope
|
|
|
|
|
scope = Devise::Mapping.find_scope!(resource_or_scope)
|
2024-04-25 16:46:20 -04:00
|
|
|
login_as(resource, scope:)
|
2023-02-01 08:30:09 -05:00
|
|
|
end
|
|
|
|
|
|
|
|
|
|
def sign_out(resource_or_scope)
|
|
|
|
|
scope = Devise::Mapping.find_scope!(resource_or_scope)
|
|
|
|
|
logout(scope)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
RSpec.configure do |config|
|
|
|
|
|
config.include DeviseRequestSpecHelpers, type: :request
|
|
|
|
|
end
|