debian-mirror-gitlab/spec/workers/incident_management/process_prometheus_alert_worker_spec.rb

28 lines
1,010 B
Ruby
Raw Normal View History

2020-04-22 19:07:51 +05:30
# frozen_string_literal: true
require 'spec_helper'
2020-07-28 23:09:34 +05:30
RSpec.describe IncidentManagement::ProcessPrometheusAlertWorker do
2020-04-22 19:07:51 +05:30
describe '#perform' do
let_it_be(:project) { create(:project) }
let_it_be(:prometheus_alert) { create(:prometheus_alert, project: project) }
2021-01-03 14:25:43 +05:30
let(:payload_key) { Gitlab::AlertManagement::Payload::Prometheus.new(project: project, payload: alert_params).gitlab_fingerprint }
2020-04-22 19:07:51 +05:30
let!(:prometheus_alert_event) { create(:prometheus_alert_event, prometheus_alert: prometheus_alert, payload_key: payload_key) }
2020-06-23 00:09:42 +05:30
let!(:settings) { create(:project_incident_management_setting, project: project, create_issue: true) }
2020-04-22 19:07:51 +05:30
let(:alert_params) do
{
startsAt: prometheus_alert.created_at.rfc3339,
labels: {
gitlab_alert_id: prometheus_alert.prometheus_metric_id
}
}.with_indifferent_access
end
2020-07-28 23:09:34 +05:30
it 'does nothing' do
2020-04-22 19:07:51 +05:30
expect { subject.perform(project.id, alert_params) }
2020-07-28 23:09:34 +05:30
.not_to change(Issue, :count)
2020-04-22 19:07:51 +05:30
end
end
end