diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2020-08-20 18:42:06 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2020-08-20 18:42:06 +0000 |
commit | 6e4e1050d9dba2b7b2523fdd1768823ab85feef4 (patch) | |
tree | 78be5963ec075d80116a932011d695dd33910b4e /spec/services/discussions/capture_diff_note_positions_service_spec.rb | |
parent | 1ce776de4ae122aba3f349c02c17cebeaa8ecf07 (diff) | |
download | gitlab-ce-6e4e1050d9dba2b7b2523fdd1768823ab85feef4.tar.gz |
Add latest changes from gitlab-org/gitlab@13-3-stable-ee
Diffstat (limited to 'spec/services/discussions/capture_diff_note_positions_service_spec.rb')
-rw-r--r-- | spec/services/discussions/capture_diff_note_positions_service_spec.rb | 28 |
1 files changed, 15 insertions, 13 deletions
diff --git a/spec/services/discussions/capture_diff_note_positions_service_spec.rb b/spec/services/discussions/capture_diff_note_positions_service_spec.rb index dede5a4c354..be53b02a4c1 100644 --- a/spec/services/discussions/capture_diff_note_positions_service_spec.rb +++ b/spec/services/discussions/capture_diff_note_positions_service_spec.rb @@ -12,24 +12,24 @@ RSpec.describe Discussions::CaptureDiffNotePositionsService do let(:offset) { 30 } let(:first_new_line) { 508 } let(:second_new_line) { 521 } + let(:third_removed_line) { 1240 } let(:service) { described_class.new(merge_request) } - def build_position(new_line, diff_refs) + def build_position(diff_refs, new_line: nil, old_line: nil) path = 'files/markdown/ruby-style-guide.md' Gitlab::Diff::Position.new(old_path: path, new_path: path, - new_line: new_line, diff_refs: diff_refs) + new_line: new_line, old_line: old_line, diff_refs: diff_refs) end - def note_for(new_line) - position = build_position(new_line, merge_request.diff_refs) + def note_for(new_line: nil, old_line: nil) + position = build_position(merge_request.diff_refs, new_line: new_line, old_line: old_line) create(:diff_note_on_merge_request, project: project, position: position, noteable: merge_request) end - def verify_diff_note_position!(note, line) - id, old_line, new_line = note.line_code.split('_') + def verify_diff_note_position!(note, new_line: nil, old_line: nil) + id, removed_line, added_line = note.line_code.split('_') - expect(new_line).to eq(line.to_s) expect(note.diff_note_positions.size).to eq(1) diff_position = note.diff_note_positions.last @@ -38,12 +38,13 @@ RSpec.describe Discussions::CaptureDiffNotePositionsService do start_sha: merge_request.target_branch_sha, head_sha: merge_request.merge_ref_head.sha) - expect(diff_position.line_code).to eq("#{id}_#{old_line.to_i - offset}_#{new_line}") - expect(diff_position.position).to eq(build_position(new_line.to_i, diff_refs)) + expect(diff_position.line_code).to eq("#{id}_#{removed_line.to_i - offset}_#{added_line}") + expect(diff_position.position).to eq(build_position(diff_refs, new_line: new_line, old_line: old_line)) end - let!(:first_discussion_note) { note_for(first_new_line) } - let!(:second_discussion_note) { note_for(second_new_line) } + let!(:first_discussion_note) { note_for(new_line: first_new_line) } + let!(:second_discussion_note) { note_for(new_line: second_new_line) } + let!(:third_discussion_note) { note_for(old_line: third_removed_line) } let!(:second_discussion_another_note) do create(:diff_note_on_merge_request, project: project, @@ -57,8 +58,9 @@ RSpec.describe Discussions::CaptureDiffNotePositionsService do MergeRequests::MergeToRefService.new(project, merge_request.author).execute(merge_request) service.execute - verify_diff_note_position!(first_discussion_note, first_new_line) - verify_diff_note_position!(second_discussion_note, second_new_line) + verify_diff_note_position!(first_discussion_note, new_line: first_new_line) + verify_diff_note_position!(second_discussion_note, new_line: second_new_line) + verify_diff_note_position!(third_discussion_note, old_line: third_removed_line - offset) expect(second_discussion_another_note.diff_note_positions).to be_empty end |