diff options
Diffstat (limited to 'spec/helpers/services_helper_spec.rb')
-rw-r--r-- | spec/helpers/services_helper_spec.rb | 55 |
1 files changed, 46 insertions, 9 deletions
diff --git a/spec/helpers/services_helper_spec.rb b/spec/helpers/services_helper_spec.rb index d6b48b3d565..650642f8982 100644 --- a/spec/helpers/services_helper_spec.rb +++ b/spec/helpers/services_helper_spec.rb @@ -28,35 +28,72 @@ RSpec.describe ServicesHelper do end end - describe '#group_level_integrations?' do - subject { helper.group_level_integrations? } + describe '#scoped_reset_integration_path' do + let(:integration) { build_stubbed(:jira_service) } + let(:group) { nil } + + subject { helper.scoped_reset_integration_path(integration, group: group) } context 'when no group is present' do - it { is_expected.to eq(false) } + it 'returns instance-level path' do + is_expected.to eq(reset_admin_application_settings_integration_path(integration)) + end end context 'when group is present' do let(:group) { build_stubbed(:group) } - before do - assign(:group, group) + it 'returns group-level path' do + is_expected.to eq(reset_group_settings_integration_path(group, integration)) end + end + end + + describe '#reset_integration?' do + let(:group) { nil } + + subject { helper.reset_integration?(integration, group: group) } - context 'when `group_level_integrations` is not enabled' do + context 'when integration is existing record' do + let_it_be(:integration) { create(:jira_service) } + + context 'when `reset_integrations` is not enabled' do it 'returns false' do - stub_feature_flags(group_level_integrations: false) + stub_feature_flags(reset_integrations: false) is_expected.to eq(false) end end - context 'when `group_level_integrations` is enabled for the group' do + context 'when `reset_integrations` is enabled' do + it 'returns true' do + stub_feature_flags(reset_integrations: true) + + is_expected.to eq(true) + end + end + + context 'when `reset_integrations` is enabled for a group' do + let(:group) { build_stubbed(:group) } + it 'returns true' do - stub_feature_flags(group_level_integrations: group) + stub_feature_flags(reset_integrations: group) is_expected.to eq(true) end end end + + context 'when integration is a new record' do + let_it_be(:integration) { build(:jira_service) } + + context 'when `reset_integrations` is enabled' do + it 'returns false' do + stub_feature_flags(reset_integrations: true) + + is_expected.to eq(false) + end + end + end end end |