Fix comment context not showing up 2
Follow-up to Change 370017. Skip can have value 0 - that means
it's defined and we don't have this.lines
Release-Notes: skip
Google-Bug-Id: b/281639963
Change-Id: I670ffe8bfcf5e1f14a3234c74a84ba908bb89835
(cherry picked from commit 084307cf9fc20b75fdac5d8a878c2ffdaedea4eb)
diff --git a/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group.ts b/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group.ts
index 2ec0a2e..6d80d78 100644
--- a/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group.ts
+++ b/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group.ts
@@ -428,7 +428,10 @@
/** Returns true if it is, or contains, a skip group. */
hasSkipGroup() {
- return !!this.skip || this.contextGroups?.some(g => !!g.skip);
+ return (
+ this.skip !== undefined ||
+ this.contextGroups?.some(g => g.skip !== undefined)
+ );
}
containsLine(side: Side, line: LineNumber) {
@@ -444,7 +447,10 @@
// For both CONTEXT_CONTROL groups and SKIP groups the `lines` array will
// be empty. So we have to use `lineRange` instead of looking at the first
// line.
- if (this.type === GrDiffGroupType.CONTEXT_CONTROL || this.skip) {
+ if (
+ this.type === GrDiffGroupType.CONTEXT_CONTROL ||
+ this.skip !== undefined
+ ) {
return side === Side.LEFT
? this.lineRange.left.start_line
: this.lineRange.right.start_line;
@@ -498,7 +504,7 @@
// The LOST or FILE lines may be hidden and thus never resolve an
// untilRendered() promise.
if (
- this.skip ||
+ this.skip !== undefined ||
lineNumber === 'LOST' ||
lineNumber === 'FILE' ||
this.type === GrDiffGroupType.CONTEXT_CONTROL
diff --git a/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group_test.ts b/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group_test.ts
index 06bf92920..7ead68f 100644
--- a/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group_test.ts
+++ b/polygerrit-ui/app/embed/diff/gr-diff/gr-diff-group_test.ts
@@ -284,6 +284,15 @@
});
assert.equal(group.startLine(Side.LEFT), 3);
assert.equal(group.startLine(Side.RIGHT), 6);
+
+ const group2 = new GrDiffGroup({
+ type: GrDiffGroupType.BOTH,
+ skip: 0,
+ offsetLeft: 3,
+ offsetRight: 6,
+ });
+ assert.equal(group2.startLine(Side.LEFT), 3);
+ assert.equal(group2.startLine(Side.RIGHT), 6);
});
test('FILE', () => {