devise_spec.rb
1.34 KB
describe 'initializers/devise' do
def load_initializer
load File.join(Rails.root, 'config', 'initializers', 'devise.rb')
end
after do
# reset to the defaults
load_initializer
end
describe 'omniauth github' do
it 'sets the client options correctly for the default github_url' do
load_initializer
options = Devise.omniauth_configs[:github].options
expect(options).to have_key(:client_options)
expect(options[:client_options]).to eq(
site: 'https://api.github.com',
authorize_url: 'https://github.com/login/oauth/authorize',
token_url: 'https://github.com/login/oauth/access_token')
end
it 'sets the client options correctly for the a GitHub Enterprise github_url' do
allow(Errbit::Config).to receive(:github_url).and_return('https://github.example.com')
allow(Errbit::Config).to receive(:github_api_url).and_return('https://github.example.com/api/v3')
load_initializer
options = Devise.omniauth_configs[:github].options
expect(options).to have_key(:client_options)
expect(options[:client_options]).to eq(
site: 'https://github.example.com/api/v3',
authorize_url: 'https://github.example.com/login/oauth/authorize',
token_url: 'https://github.example.com/login/oauth/access_token')
end
end
end