Merge "Fix null view mode for expanding diffs"
This commit is contained in:
@@ -260,8 +260,12 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
_setDiffViewMode() {
|
/**
|
||||||
if (!this.viewState.diffViewMode) {
|
* @param {boolean=} opt_reset
|
||||||
|
*/
|
||||||
|
_setDiffViewMode(opt_reset) {
|
||||||
|
if (!opt_reset && this.viewState.diffViewMode) { return; }
|
||||||
|
|
||||||
return this.$.restAPI.getPreferences().then( prefs => {
|
return this.$.restAPI.getPreferences().then( prefs => {
|
||||||
if (!this.viewState.diffMode) {
|
if (!this.viewState.diffMode) {
|
||||||
this.set('viewState.diffMode', prefs.default_diff_view);
|
this.set('viewState.diffMode', prefs.default_diff_view);
|
||||||
@@ -271,7 +275,6 @@
|
|||||||
this.set('viewState.diffMode', 'SIDE_BY_SIDE');
|
this.set('viewState.diffMode', 'SIDE_BY_SIDE');
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
|
||||||
},
|
},
|
||||||
|
|
||||||
_updateSortedRevisions(revisionsRecord) {
|
_updateSortedRevisions(revisionsRecord) {
|
||||||
@@ -619,7 +622,7 @@
|
|||||||
this.viewState.changeNum !== this._changeNum) {
|
this.viewState.changeNum !== this._changeNum) {
|
||||||
// Reset the diff mode to null when navigating from one change to
|
// Reset the diff mode to null when navigating from one change to
|
||||||
// another, so that the user's preference is restored.
|
// another, so that the user's preference is restored.
|
||||||
this.set('viewState.diffMode', null);
|
this._setDiffViewMode(true);
|
||||||
this.set('_numFilesShown', DEFAULT_NUM_FILES_SHOWN);
|
this.set('_numFilesShown', DEFAULT_NUM_FILES_SHOWN);
|
||||||
}
|
}
|
||||||
this.set('viewState.changeNum', this._changeNum);
|
this.set('viewState.changeNum', this._changeNum);
|
||||||
|
@@ -440,12 +440,22 @@ limitations under the License.
|
|||||||
element.params = {changeNum: '2'};
|
element.params = {changeNum: '2'};
|
||||||
element._change.newProp = '2';
|
element._change.newProp = '2';
|
||||||
flushAsynchronousOperations();
|
flushAsynchronousOperations();
|
||||||
assert.isNull(element.viewState.diffMode);
|
assert.equal(element.viewState.diffMode, 'UNIFIED');
|
||||||
assert.equal(element.viewState.changeNum, '2');
|
assert.equal(element.viewState.changeNum, '2');
|
||||||
assert.equal(element.viewState.numFilesShown, 200);
|
assert.equal(element.viewState.numFilesShown, 200);
|
||||||
assert.equal(element._numFilesShown, 200);
|
assert.equal(element._numFilesShown, 200);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test('_setDiffViewMode is called with reset when new change is loaded',
|
||||||
|
() => {
|
||||||
|
sandbox.stub(element, '_setDiffViewMode');
|
||||||
|
element.viewState = {changeNum: 1};
|
||||||
|
element._changeNum = 2;
|
||||||
|
element._resetFileListViewState();
|
||||||
|
assert.isTrue(
|
||||||
|
element._setDiffViewMode.lastCall.calledWithExactly(true));
|
||||||
|
});
|
||||||
|
|
||||||
test('diffMode defaults to side by side without preferences', done => {
|
test('diffMode defaults to side by side without preferences', done => {
|
||||||
sandbox.stub(element.$.restAPI, 'getPreferences').returns(
|
sandbox.stub(element.$.restAPI, 'getPreferences').returns(
|
||||||
Promise.resolve({}));
|
Promise.resolve({}));
|
||||||
|
Reference in New Issue
Block a user