diff --git a/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior.html b/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior.html index 25bb545d91..1744364acc 100644 --- a/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior.html +++ b/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior.html @@ -212,7 +212,7 @@ limitations under the License. * Check whether there is no newer patch than the latest patch that was * available when this change was loaded. * - * @return {Promise} A promise that yields true if the latest patch + * @return {Promise} A promise that yields true if the latest patch * has been loaded, and false if a newer patch has been uploaded in the * meantime. The promise is rejected on network error. */ @@ -226,7 +226,7 @@ limitations under the License. } const actualLatest = Gerrit.PatchSetBehavior.computeLatestPatchNum( Gerrit.PatchSetBehavior.computeAllPatchSets(detail)); - return actualLatest <= knownLatest; + return {isLatest: actualLatest <= knownLatest}; }); }, diff --git a/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html b/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html index bad47b99c8..e5adfed99b 100644 --- a/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html +++ b/polygerrit-ui/app/behaviors/gr-patch-set-behavior/gr-patch-set-behavior_test.html @@ -48,8 +48,8 @@ limitations under the License. }, }; Gerrit.PatchSetBehavior.fetchIsLatestKnown(knownChange, mockRestApi) - .then(isLatest => { - assert.isTrue(isLatest); + .then(result => { + assert.isTrue(result.isLatest); done(); }); }); @@ -74,8 +74,8 @@ limitations under the License. }, }; Gerrit.PatchSetBehavior.fetchIsLatestKnown(knownChange, mockRestApi) - .then(isLatest => { - assert.isFalse(isLatest); + .then(result => { + assert.isFalse(result.isLatest); done(); }); }); diff --git a/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js b/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js index c86c2516f5..ebb5b01a23 100644 --- a/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js +++ b/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions.js @@ -1063,8 +1063,8 @@ }; return this.fetchIsLatestKnown(this.change, this.$.restAPI) - .then(isLatest => { - if (!isLatest) { + .then(result => { + if (!result.isLatest) { this.fire('show-alert', { message: 'Cannot set label: a newer patch has been ' + 'uploaded to this change.', diff --git a/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions_test.html b/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions_test.html index a3932c2283..30fc742ec5 100644 --- a/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions_test.html +++ b/polygerrit-ui/app/elements/change/gr-change-actions/gr-change-actions_test.html @@ -242,7 +242,7 @@ limitations under the License. sandbox.stub(element.$.restAPI, 'getFromProjectLookup') .returns(Promise.resolve('test')); sandbox.stub(element, 'fetchIsLatestKnown', - () => { return Promise.resolve(true); }); + () => { return Promise.resolve({isLatest: true}); }); element.change = { revisions: { rev1: {_number: 1}, @@ -1265,7 +1265,7 @@ limitations under the License. setup(() => { sandbox.stub(element, 'fetchIsLatestKnown') - .returns(Promise.resolve(true)); + .returns(Promise.resolve({isLatest: true})); sendStub = sandbox.stub(element.$.restAPI, 'getChangeURLAndSend') .returns(Promise.resolve({})); }); @@ -1294,7 +1294,7 @@ limitations under the License. suite('failure modes', () => { test('non-latest', () => { sandbox.stub(element, 'fetchIsLatestKnown') - .returns(Promise.resolve(false)); + .returns(Promise.resolve({isLatest: false})); const sendStub = sandbox.stub(element.$.restAPI, 'getChangeURLAndSend'); @@ -1308,7 +1308,7 @@ limitations under the License. test('send fails', () => { sandbox.stub(element, 'fetchIsLatestKnown') - .returns(Promise.resolve(true)); + .returns(Promise.resolve({isLatest: true})); const sendStub = sandbox.stub(element.$.restAPI, 'getChangeURLAndSend', (num, method, patchNum, endpoint, payload, onErr) => { diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js index a4f621b3dd..1857101466 100644 --- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js +++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view.js @@ -1242,8 +1242,8 @@ this._updateCheckTimerHandle = this.async(() => { this.fetchIsLatestKnown(this._change, this.$.restAPI) - .then(latest => { - if (latest) { + .then(result => { + if (result.isLatest) { this._startUpdateCheckTimer(); } else { this._cancelUpdateCheckTimer(); diff --git a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html index 7d81f4da90..e784857b66 100644 --- a/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html +++ b/polygerrit-ui/app/elements/change/gr-change-view/gr-change-view_test.html @@ -121,7 +121,7 @@ limitations under the License. test('A toggles overlay when logged in', done => { sandbox.stub(element, '_getLoggedIn').returns(Promise.resolve(true)); sandbox.stub(element.$.replyDialog, 'fetchIsLatestKnown') - .returns(Promise.resolve(true)); + .returns(Promise.resolve({isLatest: true})); element._change = {labels: {}}; const openSpy = sandbox.spy(element, '_openReplyDialog'); @@ -968,7 +968,7 @@ limitations under the License. setup(() => { sandbox.stub(element.$.replyDialog, '_draftChanged'); sandbox.stub(element.$.replyDialog, 'fetchIsLatestKnown', - () => { return Promise.resolve(true); }); + () => { return Promise.resolve({isLatest: true}); }); element._change = {labels: {}}; }); @@ -1019,7 +1019,7 @@ limitations under the License. suite('commit message expand/collapse', () => { setup(() => { sandbox.stub(element, 'fetchIsLatestKnown', - () => { return Promise.resolve(false); }); + () => { return Promise.resolve({isLatest: false}); }); }); test('commitCollapseToggle hidden for short commit message', () => { @@ -1179,7 +1179,7 @@ limitations under the License. test('_startUpdateCheckTimer up-to-date', () => { sandbox.stub(element, 'fetchIsLatestKnown', - () => { return Promise.resolve(true); }); + () => { return Promise.resolve({isLatest: true}); }); element._serverConfig = {change: {update_delay: 12345}}; @@ -1190,7 +1190,7 @@ limitations under the License. test('_startUpdateCheckTimer out-of-date shows an alert', done => { sandbox.stub(element, 'fetchIsLatestKnown', - () => { return Promise.resolve(false); }); + () => { return Promise.resolve({isLatest: false}); }); element.addEventListener('show-alert', () => { done(); }); diff --git a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog-it_test.html b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog-it_test.html index babd95c0fb..b3cf2d78a4 100644 --- a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog-it_test.html +++ b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog-it_test.html @@ -86,7 +86,8 @@ limitations under the License. ], }; element.serverConfig = {note_db_enabled: true}; - sandbox.stub(element, 'fetchIsLatestKnown', () => Promise.resolve(true)); + sandbox.stub(element, 'fetchIsLatestKnown') + .returns(Promise.resolve({isLatest: true})); }; setup(() => { diff --git a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js index 1830216c86..7d31ebefde 100644 --- a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js +++ b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js @@ -238,8 +238,8 @@ open(opt_focusTarget) { this.knownLatestState = LatestPatchState.CHECKING; this.fetchIsLatestKnown(this.change, this.$.restAPI) - .then(isUpToDate => { - this.knownLatestState = isUpToDate ? + .then(result => { + this.knownLatestState = result.isLatest ? LatestPatchState.LATEST : LatestPatchState.NOT_LATEST; }); diff --git a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.html b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.html index 3cede6ab51..02bd614cbe 100644 --- a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.html +++ b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog_test.html @@ -103,8 +103,8 @@ limitations under the License. eraseDraftCommentStub = sandbox.stub(element.$.storage, 'eraseDraftComment'); - sandbox.stub(element, 'fetchIsLatestKnown', - () => { return Promise.resolve(true); }); + sandbox.stub(element, 'fetchIsLatestKnown') + .returns(Promise.resolve({isLatest: true})); // Allow the elements created by dom-repeat to be stamped. flushAsynchronousOperations();