diff options
Diffstat (limited to 'spec/services/incident_management/timeline_events/update_service_spec.rb')
-rw-r--r-- | spec/services/incident_management/timeline_events/update_service_spec.rb | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/spec/services/incident_management/timeline_events/update_service_spec.rb b/spec/services/incident_management/timeline_events/update_service_spec.rb index 8bc0e5ce0ed..3da533fb2a6 100644 --- a/spec/services/incident_management/timeline_events/update_service_spec.rb +++ b/spec/services/incident_management/timeline_events/update_service_spec.rb @@ -10,6 +10,7 @@ RSpec.describe IncidentManagement::TimelineEvents::UpdateService do let!(:timeline_event) { create(:incident_management_timeline_event, project: project, incident: incident) } let(:occurred_at) { 1.minute.ago } let(:params) { { note: 'Updated note', occurred_at: occurred_at } } + let(:current_user) { user } before do stub_feature_flags(incident_timeline: project) @@ -21,6 +22,8 @@ RSpec.describe IncidentManagement::TimelineEvents::UpdateService do expect(execute).to be_success expect(execute.payload).to eq(timeline_event: timeline_event.reload) end + + it_behaves_like 'an incident management tracked event', :incident_management_timeline_event_edited end shared_examples 'error response' do |message| @@ -28,6 +31,8 @@ RSpec.describe IncidentManagement::TimelineEvents::UpdateService do expect(execute).to be_error expect(execute.message).to eq(message) end + + it_behaves_like 'does not track incident management event', :incident_management_timeline_event_edited end shared_examples 'passing the correct was_changed value' do |was_changed| @@ -135,6 +140,14 @@ RSpec.describe IncidentManagement::TimelineEvents::UpdateService do execute end end + + context 'when timeline event is non-editable' do + let!(:timeline_event) do + create(:incident_management_timeline_event, :non_editable, project: project, incident: incident) + end + + it_behaves_like 'error response', 'You cannot edit this timeline event.' + end end context 'when user does not have permissions' do |