blob: 5d66c92d26e443df9ec24785253654b1e9b2835a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
require "spec_helper"
describe AuthHelper do
describe "button_based_providers" do
let(:settings) { ApplicationSetting.create_from_defaults }
it 'returns all enabled providers from devise' do
allow(helper).to receive(:auth_providers) { [:twitter, :github] }
expect(helper.button_based_providers).to include(*[:twitter, :github])
end
it 'does not return ldap provider' do
allow(helper).to receive(:auth_providers) { [:twitter, :ldapmain] }
expect(helper.button_based_providers).to include(:twitter)
end
it 'returns empty array' do
allow(helper).to receive(:auth_providers) { [] }
expect(helper.button_based_providers).to eq([])
end
it 'returns all the enabled providers from settings' do
allow(helper).to receive(:auth_providers) { [:twitter, :github] }
expect(helper.enabled_button_based_providers).to include(*['twitter', 'github'])
end
it 'should not return github as provider because it\'s disabled from settings' do
settings.update_attribute(
:disabled_oauth_sign_in_sources,
['github']
)
allow(helper).to receive(:auth_providers) { [:twitter, :github] }
allow(helper).to receive(:current_application_settings) { settings }
expect(helper.enabled_button_based_providers).to include('twitter')
expect(helper.enabled_button_based_providers).to_not include('github')
end
end
end
|