more readable specs for enabled_button_based_providers and button_based_providers_enabled?

This commit is contained in:
Andrei Gliga 2016-05-10 11:17:37 +03:00
parent 81d0a4a473
commit 96122034cf
1 changed files with 29 additions and 15 deletions

View File

@ -23,11 +23,14 @@ describe AuthHelper do
allow(helper).to receive(:auth_providers) { [:twitter, :github] }
end
context 'all providers are enabled to sign in' do
it 'returns all the enabled providers from settings' do
expect(helper.enabled_button_based_providers).to include(*['twitter', 'github'])
expect(helper.enabled_button_based_providers).to include('twitter', 'github')
end
end
it "should not return github as provider because it's disabled from settings" do
context 'GitHub OAuth sign in is disabled from application setting' do
it "doesn't return github as provider" do
stub_application_setting(
disabled_oauth_sign_in_sources: ['github']
)
@ -35,12 +38,22 @@ describe AuthHelper do
expect(helper.enabled_button_based_providers).to include('twitter')
expect(helper.enabled_button_based_providers).to_not include('github')
end
it 'returns true for button_based_providers_enabled? because there providers' do
expect(helper.button_based_providers_enabled?).to be true
end
end
it 'returns false for button_based_providers_enabled? because there providers' do
describe 'button_based_providers_enabled?' do
before do
allow(helper).to receive(:auth_providers) { [:twitter, :github] }
end
context 'button based providers enabled' do
it 'returns true' do
expect(helper.button_based_providers_enabled?).to be true
end
end
context 'all the button based providers are disabled via application_setting' do
it 'returns false' do
stub_application_setting(
disabled_oauth_sign_in_sources: ['github', 'twitter']
)
@ -48,4 +61,5 @@ describe AuthHelper do
expect(helper.button_based_providers_enabled?).to be false
end
end
end
end