PolyGerrit: Show wip and private status on change list
Bug: Issue 6758 Change-Id: Icf1d211c72ff273cd517b409b0f13b2922b86599
This commit is contained in:
@@ -116,19 +116,33 @@ limitations under the License.
|
||||
status === this.ChangeStatus.DRAFT;
|
||||
},
|
||||
|
||||
wipOrPrivateStatus(change) {
|
||||
if (change.work_in_progress && change.is_private) {
|
||||
return ' (Private) (WIP)';
|
||||
} else if (change.work_in_progress) {
|
||||
return ' (WIP)';
|
||||
} else if (change.is_private) {
|
||||
return ' (Private)';
|
||||
}
|
||||
return '';
|
||||
},
|
||||
|
||||
changeStatusString(change) {
|
||||
// "Closed" states should take precedence over "open" ones.
|
||||
if (change.status === this.ChangeStatus.MERGED) {
|
||||
return 'Merged';
|
||||
return 'Merged' + this.wipOrPrivateStatus(change);
|
||||
}
|
||||
if (change.status === this.ChangeStatus.ABANDONED) {
|
||||
return 'Abandoned';
|
||||
return 'Abandoned' + this.wipOrPrivateStatus(change);
|
||||
}
|
||||
if (change.mergeable === false) {
|
||||
return 'Merge Conflict';
|
||||
return 'Merge Conflict' + this.wipOrPrivateStatus(change);
|
||||
}
|
||||
if (change.status === this.ChangeStatus.DRAFT) {
|
||||
return 'Draft';
|
||||
return 'Draft' + this.wipOrPrivateStatus(change);
|
||||
}
|
||||
if (change.status === this.ChangeStatus.NEW) {
|
||||
return this.wipOrPrivateStatus(change);
|
||||
}
|
||||
return '';
|
||||
},
|
||||
|
@@ -75,5 +75,79 @@ limitations under the License.
|
||||
test('changePath', () => {
|
||||
assert.deepEqual(element.changePath('1'), '/r/c/1');
|
||||
});
|
||||
|
||||
test('Open status', () => {
|
||||
const change = {
|
||||
change_id: 'Iad9dc96274af6946f3632be53b106ef80f7ba6ca',
|
||||
revisions: {
|
||||
rev1: {_number: 1},
|
||||
},
|
||||
current_revision: 'rev1',
|
||||
status: 'NEW',
|
||||
labels: {},
|
||||
};
|
||||
const status = element.changeStatusString(change);
|
||||
assert.equal(status, '');
|
||||
});
|
||||
|
||||
test('Merged status', () => {
|
||||
const change = {
|
||||
change_id: 'Iad9dc96274af6946f3632be53b106ef80f7ba6ca',
|
||||
revisions: {
|
||||
rev1: {_number: 1},
|
||||
},
|
||||
current_revision: 'rev1',
|
||||
status: 'MERGED',
|
||||
labels: {},
|
||||
};
|
||||
const status = element.changeStatusString(change);
|
||||
assert.equal(status, 'Merged');
|
||||
});
|
||||
|
||||
test('Abandoned status', () => {
|
||||
const change = {
|
||||
change_id: 'Iad9dc96274af6946f3632be53b106ef80f7ba6ca',
|
||||
revisions: {
|
||||
rev1: {_number: 1},
|
||||
},
|
||||
current_revision: 'rev1',
|
||||
status: 'ABANDONED',
|
||||
labels: {},
|
||||
};
|
||||
const status = element.changeStatusString(change);
|
||||
assert.equal(status, 'Abandoned');
|
||||
});
|
||||
|
||||
test('Open status with private and wip', () => {
|
||||
const change = {
|
||||
change_id: 'Iad9dc96274af6946f3632be53b106ef80f7ba6ca',
|
||||
revisions: {
|
||||
rev1: {_number: 1},
|
||||
},
|
||||
current_revision: 'rev1',
|
||||
status: 'NEW',
|
||||
is_private: true,
|
||||
work_in_progress: true,
|
||||
labels: {},
|
||||
};
|
||||
const status = element.changeStatusString(change);
|
||||
assert.equal(status, ' (Private) (WIP)');
|
||||
});
|
||||
|
||||
test('Abandoned status with private and wip', () => {
|
||||
const change = {
|
||||
change_id: 'Iad9dc96274af6946f3632be53b106ef80f7ba6ca',
|
||||
revisions: {
|
||||
rev1: {_number: 1},
|
||||
},
|
||||
current_revision: 'rev1',
|
||||
status: 'ABANDONED',
|
||||
is_private: true,
|
||||
work_in_progress: true,
|
||||
labels: {},
|
||||
};
|
||||
const status = element.changeStatusString(change);
|
||||
assert.equal(status, 'Abandoned (Private) (WIP)');
|
||||
});
|
||||
});
|
||||
</script>
|
||||
|
Reference in New Issue
Block a user