Sha256: 42166b55b721889eab87d8efa0b76432be2628eae807dfc2aec0294e8439ce16

Contents?: true

Size: 1.73 KB

Versions: 12

Compression:

Stored size: 1.73 KB

Contents

require 'test_helper'

class OmniAuthRoutesTest < ActionController::TestCase
  tests ApplicationController

  def assert_path(action, provider, with_param=true)
    # Resource param
    assert_equal @controller.send(action, :user, provider),
                 @controller.send("user_#{provider}_#{action}")

    # With an object
    assert_equal @controller.send(action, User.new, provider),
                 @controller.send("user_#{provider}_#{action}")

    if with_param
      # Default url params
      assert_equal @controller.send(action, :user, provider, param: 123),
                   @controller.send("user_#{provider}_#{action}", param: 123)
    end
  end

  test 'should alias omniauth_callback to mapped user auth_callback' do
    assert_path :omniauth_callback_path, :facebook
  end

  test 'should alias omniauth_authorize to mapped user auth_authorize' do
    assert_path :omniauth_authorize_path, :facebook, false
  end

  test 'should generate authorization path' do
    assert_match "/users/auth/facebook", @controller.omniauth_authorize_path(:user, :facebook)

    assert_raise NoMethodError do
      @controller.omniauth_authorize_path(:user, :github)
    end
  end

  test 'should generate authorization path for named open_id omniauth' do
    assert_match "/users/auth/google", @controller.omniauth_authorize_path(:user, :google)
  end

  test 'should generate authorization path with params' do
    assert_match "/users/auth/openid?openid_url=http%3A%2F%2Fyahoo.com",
                  @controller.omniauth_authorize_path(:user, :openid, openid_url: "http://yahoo.com")
  end

  test 'should not add a "?" if no param was sent' do
    assert_equal "/users/auth/openid",
                  @controller.omniauth_authorize_path(:user, :openid)
  end
end

Version data entries

12 entries across 12 versions & 3 rubygems

Version Path
devise-4.3.0 test/omniauth/url_helpers_test.rb
enju_leaf-1.2.1 vendor/bundle/ruby/2.3/gems/devise-4.2.1/test/omniauth/url_helpers_test.rb
devise-4.2.1 test/omniauth/url_helpers_test.rb
devise-4.2.0 test/omniauth/url_helpers_test.rb
devise-4.0.3 test/omniauth/url_helpers_test.rb
devise-4.1.1 test/omniauth/url_helpers_test.rb
ish_lib_manager-0.0.1 test/dummy/vendor/bundle/ruby/2.3.0/gems/devise-4.1.0/test/omniauth/url_helpers_test.rb
devise-4.1.0 test/omniauth/url_helpers_test.rb
devise-4.0.2 test/omniauth/url_helpers_test.rb
devise-4.0.1 test/omniauth/url_helpers_test.rb
devise-4.0.0 test/omniauth/url_helpers_test.rb
devise-4.0.0.rc2 test/omniauth/url_helpers_test.rb