diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-06-20 14:10:13 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-06-20 14:10:13 +0300 |
commit | 0ea3fcec397b69815975647f5e2aa5fe944a8486 (patch) | |
tree | 7979381b89d26011bcf9bdc989a40fcc2f1ed4ff /spec/controllers/projects/prometheus/alerts_controller_spec.rb | |
parent | 72123183a20411a36d607d70b12d57c484394c8e (diff) |
Add latest changes from gitlab-org/gitlab@15-1-stable-eev15.1.0-rc42
Diffstat (limited to 'spec/controllers/projects/prometheus/alerts_controller_spec.rb')
-rw-r--r-- | spec/controllers/projects/prometheus/alerts_controller_spec.rb | 106 |
1 files changed, 0 insertions, 106 deletions
diff --git a/spec/controllers/projects/prometheus/alerts_controller_spec.rb b/spec/controllers/projects/prometheus/alerts_controller_spec.rb index f42119e7811..2c2c8180143 100644 --- a/spec/controllers/projects/prometheus/alerts_controller_spec.rb +++ b/spec/controllers/projects/prometheus/alerts_controller_spec.rb @@ -53,112 +53,6 @@ RSpec.describe Projects::Prometheus::AlertsController do end end - describe 'GET #index' do - def make_request(opts = {}) - get :index, params: request_params(opts, environment_id: environment) - end - - context 'when project has no prometheus alert' do - it 'returns an empty response' do - make_request - - expect(response).to have_gitlab_http_status(:ok) - expect(json_response).to be_empty - end - end - - context 'when project has prometheus alerts' do - let(:production) { create(:environment, project: project) } - let(:staging) { create(:environment, project: project) } - let(:json_alert_ids) { json_response.map { |alert| alert['id'] } } - - let!(:production_alerts) do - create_list(:prometheus_alert, 2, project: project, environment: production) - end - - let!(:staging_alerts) do - create_list(:prometheus_alert, 1, project: project, environment: staging) - end - - it 'contains prometheus alerts only for the production environment' do - make_request(environment_id: production) - - expect(response).to have_gitlab_http_status(:ok) - expect(json_response.count).to eq(2) - expect(json_alert_ids).to eq(production_alerts.map(&:id)) - end - - it 'contains prometheus alerts only for the staging environment' do - make_request(environment_id: staging) - - expect(response).to have_gitlab_http_status(:ok) - expect(json_response.count).to eq(1) - expect(json_alert_ids).to eq(staging_alerts.map(&:id)) - end - - it 'does not return prometheus alerts without environment' do - make_request(environment_id: nil) - - expect(response).to have_gitlab_http_status(:ok) - expect(json_response).to be_empty - end - end - - it_behaves_like 'unprivileged' - it_behaves_like 'project non-specific environment', :ok - end - - describe 'GET #show' do - let(:alert) do - create(:prometheus_alert, - :with_runbook_url, - project: project, - environment: environment, - prometheus_metric: metric) - end - - def make_request(opts = {}) - get :show, params: request_params( - opts, - id: alert.prometheus_metric_id, - environment_id: environment - ) - end - - context 'when alert does not exist' do - it 'returns not_found' do - make_request(id: 0) - - expect(response).to have_gitlab_http_status(:not_found) - end - end - - context 'when alert exists' do - let(:alert_params) do - { - 'id' => alert.id, - 'title' => alert.title, - 'query' => alert.query, - 'operator' => alert.computed_operator, - 'threshold' => alert.threshold, - 'runbook_url' => alert.runbook_url, - 'alert_path' => alert_path(alert) - } - end - - it 'renders the alert' do - make_request - - expect(response).to have_gitlab_http_status(:ok) - expect(json_response).to include(alert_params) - end - - it_behaves_like 'unprivileged' - it_behaves_like 'project non-specific environment', :not_found - it_behaves_like 'project non-specific metric', :not_found - end - end - describe 'POST #notify' do let(:alert_1) { build(:alert_management_alert, :prometheus, project: project) } let(:alert_2) { build(:alert_management_alert, :prometheus, project: project) } |