summaryrefslogtreecommitdiff
path: root/spec/controllers/projects/prometheus/alerts_controller_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/controllers/projects/prometheus/alerts_controller_spec.rb')
-rw-r--r--spec/controllers/projects/prometheus/alerts_controller_spec.rb16
1 files changed, 14 insertions, 2 deletions
diff --git a/spec/controllers/projects/prometheus/alerts_controller_spec.rb b/spec/controllers/projects/prometheus/alerts_controller_spec.rb
index 91d3ba7e106..44292b9ce19 100644
--- a/spec/controllers/projects/prometheus/alerts_controller_spec.rb
+++ b/spec/controllers/projects/prometheus/alerts_controller_spec.rb
@@ -2,7 +2,7 @@
require 'spec_helper'
-RSpec.describe Projects::Prometheus::AlertsController do
+RSpec.describe Projects::Prometheus::AlertsController, feature_category: :incident_management do
let_it_be(:user) { create(:user) }
let_it_be(:project) { create(:project) }
let_it_be(:environment) { create(:environment, project: project) }
@@ -115,11 +115,15 @@ RSpec.describe Projects::Prometheus::AlertsController do
end
end
- describe 'GET #metrics_dashboard' do
+ describe 'GET #metrics_dashboard', feature_category: :metrics do
let!(:alert) do
create(:prometheus_alert, project: project, environment: environment, prometheus_metric: metric)
end
+ before do
+ stub_feature_flags(remove_monitor_metrics: false)
+ end
+
it 'returns a json object with the correct keys' do
get :metrics_dashboard, params: request_params(id: metric.id, environment_id: alert.environment.id), format: :json
@@ -148,6 +152,14 @@ RSpec.describe Projects::Prometheus::AlertsController do
expect(response).to have_gitlab_http_status(:not_found)
end
+
+ it 'returns 404 when metrics dashboard feature is unavailable' do
+ stub_feature_flags(remove_monitor_metrics: true)
+
+ get :metrics_dashboard, params: request_params(id: 0), format: :json
+
+ expect(response).to have_gitlab_http_status(:not_found)
+ end
end
def project_params(opts = {})