From 8c2b72b1c80e8bbd082ac8e1aedb21a1aad07235 Mon Sep 17 00:00:00 2001 From: Andrei Gliga Date: Wed, 4 May 2016 17:04:54 +0300 Subject: tests for enabled_button_based_providers helper method of AuthHelper --- spec/helpers/auth_helper_spec.rb | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index e47a54fdac5..5d66c92d26e 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -2,7 +2,9 @@ require "spec_helper" describe AuthHelper do describe "button_based_providers" do - it 'returns all enabled 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 @@ -16,5 +18,23 @@ describe AuthHelper 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 -- cgit v1.2.1 From 6f69f6a1ab70bd2252803a64927d0c8df1d03612 Mon Sep 17 00:00:00 2001 From: Andrei Gliga Date: Wed, 4 May 2016 17:06:07 +0300 Subject: tests for button_based_providers_enabled? helper method of AuthHelper --- spec/helpers/auth_helper_spec.rb | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index 5d66c92d26e..a6a366bc19a 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -36,5 +36,23 @@ 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 + allow(helper).to receive(:auth_providers) { [:twitter, :github] } + + expect(helper.button_based_providers_enabled?).to be true + end + + it 'returns false for button_based_providers_enabled? because there providers' do + settings.update_attribute( + :disabled_oauth_sign_in_sources, + ['github', 'twitter'] + ) + + allow(helper).to receive(:auth_providers) { [:twitter, :github] } + allow(helper).to receive(:current_application_settings) { settings } + + expect(helper.button_based_providers_enabled?).to be false + end end end -- cgit v1.2.1 From 2e4c914ae88b77c8a3871f8415163a51e23254e5 Mon Sep 17 00:00:00 2001 From: Andrei Gliga Date: Mon, 9 May 2016 10:31:25 +0300 Subject: between "" --- spec/helpers/auth_helper_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index a6a366bc19a..6dc1135927d 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -24,7 +24,7 @@ describe AuthHelper do 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 + it "should not return github as provider because it's disabled from settings" do settings.update_attribute( :disabled_oauth_sign_in_sources, ['github'] -- cgit v1.2.1 From fc88527c9e21f99a9411423f1c8a6475957c02f3 Mon Sep 17 00:00:00 2001 From: Andrei Gliga Date: Mon, 9 May 2016 10:40:27 +0300 Subject: use stub_application_setting instead --- spec/helpers/auth_helper_spec.rb | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index 6dc1135927d..e6af074a780 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -2,8 +2,6 @@ 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]) @@ -25,13 +23,11 @@ describe AuthHelper do end it "should not return github as provider because it's disabled from settings" do - settings.update_attribute( - :disabled_oauth_sign_in_sources, - ['github'] + stub_application_setting( + 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') @@ -44,13 +40,11 @@ describe AuthHelper do end it 'returns false for button_based_providers_enabled? because there providers' do - settings.update_attribute( - :disabled_oauth_sign_in_sources, - ['github', 'twitter'] + stub_application_setting( + disabled_oauth_sign_in_sources: ['github', 'twitter'] ) allow(helper).to receive(:auth_providers) { [:twitter, :github] } - allow(helper).to receive(:current_application_settings) { settings } expect(helper.button_based_providers_enabled?).to be false end -- cgit v1.2.1 From 3922e7ee2249bb5a683b7474b281d8e83d465740 Mon Sep 17 00:00:00 2001 From: Andrei Gliga Date: Mon, 9 May 2016 10:42:57 +0300 Subject: enabled_button_based_providers into their own describe section --- spec/helpers/auth_helper_spec.rb | 2 ++ 1 file changed, 2 insertions(+) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index e6af074a780..04b51282795 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -16,7 +16,9 @@ describe AuthHelper do allow(helper).to receive(:auth_providers) { [] } expect(helper.button_based_providers).to eq([]) end + end + describe 'enabled_button_based_providers' do 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']) -- cgit v1.2.1 From 038dbb6803948e050484ed3f34c99b2f3bf7a6c5 Mon Sep 17 00:00:00 2001 From: Andrei Gliga Date: Mon, 9 May 2016 10:51:24 +0300 Subject: DRYing enabled_button_based_providers tests --- spec/helpers/auth_helper_spec.rb | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index 04b51282795..a6df8204213 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -19,8 +19,11 @@ describe AuthHelper do end describe 'enabled_button_based_providers' do - it 'returns all the enabled providers from settings' do + before do allow(helper).to receive(:auth_providers) { [:twitter, :github] } + end + + it 'returns all the enabled providers from settings' do expect(helper.enabled_button_based_providers).to include(*['twitter', 'github']) end @@ -29,15 +32,11 @@ describe AuthHelper do disabled_oauth_sign_in_sources: ['github'] ) - allow(helper).to receive(:auth_providers) { [:twitter, :github] } - 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 - allow(helper).to receive(:auth_providers) { [:twitter, :github] } - expect(helper.button_based_providers_enabled?).to be true end @@ -46,8 +45,6 @@ describe AuthHelper do disabled_oauth_sign_in_sources: ['github', 'twitter'] ) - allow(helper).to receive(:auth_providers) { [:twitter, :github] } - expect(helper.button_based_providers_enabled?).to be false end end -- cgit v1.2.1 From 96122034cfc2eb7039ae75b20b729f35e9aa832e Mon Sep 17 00:00:00 2001 From: Andrei Gliga Date: Tue, 10 May 2016 11:17:37 +0300 Subject: more readable specs for enabled_button_based_providers and button_based_providers_enabled? --- spec/helpers/auth_helper_spec.rb | 44 ++++++++++++++++++++++++++-------------- 1 file changed, 29 insertions(+), 15 deletions(-) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index a6df8204213..16fbb5dcecb 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -23,29 +23,43 @@ describe AuthHelper do allow(helper).to receive(:auth_providers) { [:twitter, :github] } end - it 'returns all the enabled providers from settings' do - expect(helper.enabled_button_based_providers).to include(*['twitter', 'github']) + 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') + end end - it "should not return github as provider because it's disabled from settings" do - stub_application_setting( - disabled_oauth_sign_in_sources: ['github'] - ) + 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'] + ) - expect(helper.enabled_button_based_providers).to include('twitter') - expect(helper.enabled_button_based_providers).to_not include('github') + expect(helper.enabled_button_based_providers).to include('twitter') + expect(helper.enabled_button_based_providers).to_not include('github') + end + end + end + + describe 'button_based_providers_enabled?' do + before do + allow(helper).to receive(:auth_providers) { [:twitter, :github] } end - it 'returns true for button_based_providers_enabled? because there providers' do - expect(helper.button_based_providers_enabled?).to be true + context 'button based providers enabled' do + it 'returns true' do + expect(helper.button_based_providers_enabled?).to be true + end end - it 'returns false for button_based_providers_enabled? because there providers' do - stub_application_setting( - disabled_oauth_sign_in_sources: ['github', 'twitter'] - ) + 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'] + ) - expect(helper.button_based_providers_enabled?).to be false + expect(helper.button_based_providers_enabled?).to be false + end end end end -- cgit v1.2.1 From 75739e54be0fca389c05d3d9d3de69737c0ff3ab Mon Sep 17 00:00:00 2001 From: Robert Speicher Date: Mon, 23 May 2016 19:37:59 -0400 Subject: Enable RSpec/NotToNot cop and auto-correct offenses Also removes the note from the development/testing.md guide --- spec/helpers/auth_helper_spec.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'spec/helpers/auth_helper_spec.rb') diff --git a/spec/helpers/auth_helper_spec.rb b/spec/helpers/auth_helper_spec.rb index 16fbb5dcecb..49ea4fa6d3e 100644 --- a/spec/helpers/auth_helper_spec.rb +++ b/spec/helpers/auth_helper_spec.rb @@ -36,7 +36,7 @@ describe AuthHelper do ) expect(helper.enabled_button_based_providers).to include('twitter') - expect(helper.enabled_button_based_providers).to_not include('github') + expect(helper.enabled_button_based_providers).not_to include('github') end end end -- cgit v1.2.1