Sha256: 19e034f1a4abc699b4d602a42c965134874fee62011392b82ba244f407443f94

Contents?: true

Size: 985 Bytes

Versions: 11

Compression:

Stored size: 985 Bytes

Contents

# frozen_string_literal: true

module Decidim
  module WardenTestHelpers
    include Warden::Test::Helpers

    #
    # Utility method to login in the middle of a test as a different user from
    # the current one.
    #
    def relogin_as(user, scope: :user)
      logout scope

      login_as user, scope:
    end
  end
end

RSpec.configure do |config|
  config.include Decidim::WardenTestHelpers, type: :system
  config.include Decidim::WardenTestHelpers, type: :request
  config.include Devise::Test::ControllerHelpers, type: :controller

  config.before :each, type: :cell do
    if controller
      allow(controller).to receive(:current_organization).and_return(try(:organization) || try(:current_organization) || nil)
      allow(controller).to receive(:current_user).and_return(try(:user) || try(:current_user) || nil)
    end
  end

  config.after :each, type: :system do
    Warden.test_reset!
  end

  config.after :each, type: :request do
    Warden.test_reset!
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
decidim-dev-0.29.0 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.28.3 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.29.0.rc4 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.29.0.rc3 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.29.0.rc2 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.29.0.rc1 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.28.2 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.28.1 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.28.0 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.28.0.rc5 lib/decidim/dev/test/rspec_support/warden.rb
decidim-dev-0.28.0.rc4 lib/decidim/dev/test/rspec_support/warden.rb