diff options
Diffstat (limited to 'spec/lib/gitlab/conflict/file_spec.rb')
-rw-r--r-- | spec/lib/gitlab/conflict/file_spec.rb | 32 |
1 files changed, 20 insertions, 12 deletions
diff --git a/spec/lib/gitlab/conflict/file_spec.rb b/spec/lib/gitlab/conflict/file_spec.rb index 0de944d3f8a..bb9bee763d8 100644 --- a/spec/lib/gitlab/conflict/file_spec.rb +++ b/spec/lib/gitlab/conflict/file_spec.rb @@ -97,19 +97,27 @@ RSpec.describe Gitlab::Conflict::File do let(:diff_line_types) { conflict_file.diff_lines_for_serializer.map(&:type) } it 'assigns conflict types to the diff lines' do - expect(diff_line_types[4]).to eq('conflict_marker') - expect(diff_line_types[5..10]).to eq(['conflict_marker_our'] * 6) + expect(diff_line_types[4]).to eq('conflict_marker_our') + expect(diff_line_types[5..10]).to eq(['conflict_our'] * 6) expect(diff_line_types[11]).to eq('conflict_marker') - expect(diff_line_types[12..17]).to eq(['conflict_marker_their'] * 6) - expect(diff_line_types[18]).to eq('conflict_marker') + expect(diff_line_types[12..17]).to eq(['conflict_their'] * 6) + expect(diff_line_types[18]).to eq('conflict_marker_their') expect(diff_line_types[19..24]).to eq([nil] * 6) - expect(diff_line_types[25]).to eq('conflict_marker') - expect(diff_line_types[26..27]).to eq(['conflict_marker_our'] * 2) + expect(diff_line_types[25]).to eq('conflict_marker_our') + expect(diff_line_types[26..27]).to eq(['conflict_our'] * 2) expect(diff_line_types[28]).to eq('conflict_marker') - expect(diff_line_types[29..30]).to eq(['conflict_marker_their'] * 2) - expect(diff_line_types[31]).to eq('conflict_marker') + expect(diff_line_types[29..30]).to eq(['conflict_their'] * 2) + expect(diff_line_types[31]).to eq('conflict_marker_their') + end + + # Swap the positions around due to conflicts/diffs display inconsistency + # https://gitlab.com/gitlab-org/gitlab/-/issues/291989 + it 'swaps the new and old positions around' do + lines = conflict_file.diff_lines_for_serializer + expect(lines.map(&:old_pos)[26..27]).to eq([21, 22]) + expect(lines.map(&:new_pos)[29..30]).to eq([21, 22]) end it 'does not add a match line to the end of the section' do @@ -124,13 +132,13 @@ RSpec.describe Gitlab::Conflict::File do expect(diff_line_types).to eq([ 'match', nil, nil, nil, - "conflict_marker", "conflict_marker_our", + "conflict_our", "conflict_marker", + "conflict_their", + "conflict_their", + "conflict_their", "conflict_marker_their", - "conflict_marker_their", - "conflict_marker_their", - "conflict_marker", nil, nil, nil, "match" ]) |