Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'spec/models/incident_management/timeline_event_spec.rb')
-rw-r--r--spec/models/incident_management/timeline_event_spec.rb16
1 files changed, 14 insertions, 2 deletions
diff --git a/spec/models/incident_management/timeline_event_spec.rb b/spec/models/incident_management/timeline_event_spec.rb
index 9f4011fe6a7..fea391acda3 100644
--- a/spec/models/incident_management/timeline_event_spec.rb
+++ b/spec/models/incident_management/timeline_event_spec.rb
@@ -29,7 +29,7 @@ RSpec.describe IncidentManagement::TimelineEvent do
it { is_expected.to validate_length_of(:action).is_at_most(128) }
end
- describe '.order_occurred_at_asc' do
+ describe '.order_occurred_at_asc_id_asc' do
let_it_be(:occurred_3mins_ago) do
create(:incident_management_timeline_event, project: project, occurred_at: 3.minutes.ago)
end
@@ -38,11 +38,23 @@ RSpec.describe IncidentManagement::TimelineEvent do
create(:incident_management_timeline_event, project: project, occurred_at: 2.minutes.ago)
end
- subject(:order) { described_class.order_occurred_at_asc }
+ subject(:order) { described_class.order_occurred_at_asc_id_asc }
it 'sorts timeline events by occurred_at' do
is_expected.to eq([occurred_3mins_ago, occurred_2mins_ago, timeline_event])
end
+
+ context 'when two events occured at the same time' do
+ let_it_be(:also_occurred_2mins_ago) do
+ create(:incident_management_timeline_event, project: project, occurred_at: occurred_2mins_ago.occurred_at)
+ end
+
+ it 'sorts timeline events by occurred_at then sorts by id' do
+ occurred_2mins_ago.touch # Interact with record of earlier id to switch default DB ordering
+
+ is_expected.to eq([occurred_3mins_ago, occurred_2mins_ago, also_occurred_2mins_ago, timeline_event])
+ end
+ end
end
describe '#cache_markdown_field' do