Fixes diff discussions not being fully removed
This fixes a bug where a discussion on a none changed line would not get fully removed and therefore leave the comment row empty. This was caused by the discussiob being added to the right when it shouldnt of been This also fixes a very rare edge case where discussions would get added twice to diff lines causing a Vue rendering warning Closes https://gitlab.com/gitlab-org/gitlab-ce/issues/53317
This commit is contained in:
parent
6d7e52bdeb
commit
605e7fddc8
3 changed files with 5 additions and 8 deletions
|
@ -153,13 +153,9 @@ export default {
|
|||
},
|
||||
setDiscussions() {
|
||||
if (this.isNotesFetched && !this.assignedDiscussions && !this.isLoading) {
|
||||
requestIdleCallback(
|
||||
() =>
|
||||
this.assignDiscussionsToDiff().then(() => {
|
||||
this.assignedDiscussions = true;
|
||||
}),
|
||||
{ timeout: 1000 },
|
||||
);
|
||||
|
||||
requestIdleCallback(() => this.assignDiscussionsToDiff(), { timeout: 1000 });
|
||||
}
|
||||
},
|
||||
adjustView() {
|
||||
|
|
|
@ -133,7 +133,7 @@ export default {
|
|||
},
|
||||
right: {
|
||||
...line.right,
|
||||
discussions: right ? line.right.discussions.concat(discussion) : [],
|
||||
discussions: right && !left ? line.right.discussions.concat(discussion) : [],
|
||||
},
|
||||
};
|
||||
}
|
||||
|
|
|
@ -221,6 +221,7 @@ describe('DiffsStoreMutations', () => {
|
|||
|
||||
expect(state.diffFiles[0].parallelDiffLines[0].left.discussions.length).toEqual(1);
|
||||
expect(state.diffFiles[0].parallelDiffLines[0].left.discussions[0].id).toEqual(1);
|
||||
expect(state.diffFiles[0].parallelDiffLines[0].right.discussions).toEqual([]);
|
||||
|
||||
expect(state.diffFiles[0].highlightedDiffLines[0].discussions.length).toEqual(1);
|
||||
expect(state.diffFiles[0].highlightedDiffLines[0].discussions[0].id).toEqual(1);
|
||||
|
|
Loading…
Reference in a new issue