Merge branch 'fix/issue-move-preserve-update-time' into 'master'
Preserve time notes has been updated at when moving issue Closes #14490 See merge request !3356
This commit is contained in:
commit
6c4d6dd684
|
@ -1,6 +1,7 @@
|
||||||
Please view this file on the master branch, on stable branches it's out of date.
|
Please view this file on the master branch, on stable branches it's out of date.
|
||||||
|
|
||||||
v 8.7.0 (unreleased)
|
v 8.7.0 (unreleased)
|
||||||
|
- Preserve time notes/comments have been updated at when moving issue
|
||||||
- Make HTTP(s) label consistent on clone bar (Stan Hu)
|
- Make HTTP(s) label consistent on clone bar (Stan Hu)
|
||||||
|
|
||||||
v 8.6.1 (unreleased)
|
v 8.6.1 (unreleased)
|
||||||
|
|
|
@ -54,7 +54,8 @@ module Issues
|
||||||
new_note = note.dup
|
new_note = note.dup
|
||||||
new_params = { project: @new_project, noteable: @new_issue,
|
new_params = { project: @new_project, noteable: @new_issue,
|
||||||
note: unfold_references(new_note.note),
|
note: unfold_references(new_note.note),
|
||||||
created_at: note.created_at }
|
created_at: note.created_at,
|
||||||
|
updated_at: note.updated_at }
|
||||||
|
|
||||||
new_note.update(new_params)
|
new_note.update(new_params)
|
||||||
end
|
end
|
||||||
|
|
|
@ -85,6 +85,10 @@ describe Issues::MoveService, services: true do
|
||||||
expect(old_issue.moved?).to eq true
|
expect(old_issue.moved?).to eq true
|
||||||
expect(old_issue.moved_to).to eq new_issue
|
expect(old_issue.moved_to).to eq new_issue
|
||||||
end
|
end
|
||||||
|
|
||||||
|
it 'preserves create time' do
|
||||||
|
expect(old_issue.created_at).to eq new_issue.created_at
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context 'issue with notes' do
|
context 'issue with notes' do
|
||||||
|
@ -121,10 +125,23 @@ describe Issues::MoveService, services: true do
|
||||||
it 'preserves orignal author of comment' do
|
it 'preserves orignal author of comment' do
|
||||||
expect(user_notes.pluck(:author_id)).to all(eq(author.id))
|
expect(user_notes.pluck(:author_id)).to all(eq(author.id))
|
||||||
end
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
context 'note that has been updated' do
|
||||||
|
let!(:note) do
|
||||||
|
create(:note, noteable: old_issue, project: old_project,
|
||||||
|
author: author, updated_at: Date.yesterday,
|
||||||
|
created_at: Date.yesterday)
|
||||||
|
end
|
||||||
|
|
||||||
|
include_context 'issue move executed'
|
||||||
|
|
||||||
it 'preserves time when note has been created at' do
|
it 'preserves time when note has been created at' do
|
||||||
expect(old_issue.notes.first.created_at)
|
expect(new_issue.notes.first.created_at).to eq note.created_at
|
||||||
.to eq new_issue.notes.first.created_at
|
end
|
||||||
|
|
||||||
|
it 'preserves time when note has been updated at' do
|
||||||
|
expect(new_issue.notes.first.updated_at).to eq note.updated_at
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue