diff --git a/app/helpers/projects/alert_management_helper.rb b/app/helpers/projects/alert_management_helper.rb index 17f5a400eec8d5511eddb206472e6129a54c76f7..b2bb32239aa512ce6653dc1b78fb8dcebadf8990 100644 --- a/app/helpers/projects/alert_management_helper.rb +++ b/app/helpers/projects/alert_management_helper.rb @@ -7,7 +7,7 @@ module Projects::AlertManagementHelper 'enable-alert-management-path' => edit_project_service_path(project, AlertsService), 'empty-alert-svg-path' => image_path('illustrations/alert-management-empty-state.svg'), 'user-can-enable-alert-management' => can?(current_user, :admin_project, project).to_s, - 'alert-management-enabled' => Feature.enabled?(:alert_management_minimal, project).to_s + 'alert-management-enabled' => (!!project.alerts_service_activated?).to_s } end diff --git a/spec/helpers/projects/alert_management_helper_spec.rb b/spec/helpers/projects/alert_management_helper_spec.rb index e1b01f4c196f37fbe11ee27a7820b5cd0eb3c384..57d781d9cb340f6da7a16dba621c9906917f9b20 100644 --- a/spec/helpers/projects/alert_management_helper_spec.rb +++ b/spec/helpers/projects/alert_management_helper_spec.rb @@ -13,6 +13,8 @@ describe Projects::AlertManagementHelper do let(:user_can_enable_alert_management) { true } let(:setting_path) { edit_project_service_path(project, AlertsService) } + subject(:data) { helper.alert_management_data(current_user, project) } + before do allow(helper) .to receive(:can?) @@ -27,11 +29,33 @@ describe Projects::AlertManagementHelper do 'enable-alert-management-path' => setting_path, 'empty-alert-svg-path' => match_asset_path('/assets/illustrations/alert-management-empty-state.svg'), 'user-can-enable-alert-management' => 'true', - 'alert-management-enabled' => 'true' + 'alert-management-enabled' => 'false' ) end end + context 'with alerts service' do + let_it_be(:alerts_service) { create(:alerts_service, project: project) } + + context 'when alerts service is active' do + it 'enables alert management' do + expect(data).to include( + 'alert-management-enabled' => 'true' + ) + end + end + + context 'when alerts service is inactive' do + it 'disables alert management' do + alerts_service.update(active: false) + + expect(data).to include( + 'alert-management-enabled' => 'false' + ) + end + end + end + context 'when user does not have requisite enablement permissions' do let(:user_can_enable_alert_management) { false }