Merge "Add ability to not pass in the server config to the gr-change-view"
This commit is contained in:
@@ -76,14 +76,14 @@
|
||||
},
|
||||
backPage: String,
|
||||
hasParent: Boolean,
|
||||
serverConfig: {
|
||||
type: Object,
|
||||
observer: '_startUpdateCheckTimer',
|
||||
},
|
||||
keyEventTarget: {
|
||||
type: Object,
|
||||
value() { return document.body; },
|
||||
},
|
||||
_serverConfig: {
|
||||
type: Object,
|
||||
observer: '_startUpdateCheckTimer',
|
||||
},
|
||||
_diffPrefs: Object,
|
||||
_numFilesShown: {
|
||||
type: Number,
|
||||
@@ -165,7 +165,7 @@
|
||||
_replyDisabled: {
|
||||
type: Boolean,
|
||||
value: true,
|
||||
computed: '_computeReplyDisabled(serverConfig)',
|
||||
computed: '_computeReplyDisabled(_serverConfig)',
|
||||
},
|
||||
_changeStatus: {
|
||||
type: String,
|
||||
@@ -206,6 +206,10 @@
|
||||
},
|
||||
|
||||
attached() {
|
||||
this._getServerConfig().then(config => {
|
||||
this._serverConfig = config;
|
||||
});
|
||||
|
||||
this._getLoggedIn().then(loggedIn => {
|
||||
this._loggedIn = loggedIn;
|
||||
if (loggedIn) {
|
||||
@@ -900,6 +904,10 @@
|
||||
return this.$.restAPI.getLoggedIn();
|
||||
},
|
||||
|
||||
_getServerConfig() {
|
||||
return this.$.restAPI.getConfig();
|
||||
},
|
||||
|
||||
_getProjectConfig() {
|
||||
return this.$.restAPI.getProjectConfig(this._change.project).then(
|
||||
config => {
|
||||
@@ -1256,10 +1264,10 @@
|
||||
},
|
||||
|
||||
_startUpdateCheckTimer() {
|
||||
if (!this.serverConfig ||
|
||||
!this.serverConfig.change ||
|
||||
this.serverConfig.change.update_delay === undefined ||
|
||||
this.serverConfig.change.update_delay <= MIN_CHECK_INTERVAL_SECS) {
|
||||
if (!this._serverConfig ||
|
||||
!this._serverConfig.change ||
|
||||
this._serverConfig.change.update_delay === undefined ||
|
||||
this._serverConfig.change.update_delay <= MIN_CHECK_INTERVAL_SECS) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1283,7 +1291,7 @@
|
||||
});
|
||||
}
|
||||
});
|
||||
}, this.serverConfig.change.update_delay * 1000);
|
||||
}, this._serverConfig.change.update_delay * 1000);
|
||||
},
|
||||
|
||||
_cancelUpdateCheckTimer() {
|
||||
|
@@ -44,7 +44,7 @@ limitations under the License.
|
||||
sandbox = sinon.sandbox.create();
|
||||
showStub = sandbox.stub(page, 'show');
|
||||
stub('gr-rest-api-interface', {
|
||||
getConfig() { return Promise.resolve({}); },
|
||||
getConfig() { return Promise.resolve({test: 'config'}); },
|
||||
getAccount() { return Promise.resolve(null); },
|
||||
});
|
||||
element = fixture('basic');
|
||||
@@ -167,6 +167,13 @@ limitations under the License.
|
||||
});
|
||||
});
|
||||
|
||||
test('fetches the server config on attached', done => {
|
||||
flush(() => {
|
||||
assert.equal(element._serverConfig.test, 'config');
|
||||
done();
|
||||
});
|
||||
});
|
||||
|
||||
test('Diff preferences hidden when no prefs or logged out', () => {
|
||||
element._loggedIn = false;
|
||||
flushAsynchronousOperations();
|
||||
@@ -1125,7 +1132,7 @@ limitations under the License.
|
||||
|
||||
test('reply button is disabled until server config is loaded', () => {
|
||||
assert.isTrue(element._replyDisabled);
|
||||
element.serverConfig = {};
|
||||
element._serverConfig = {};
|
||||
assert.isFalse(element._replyDisabled);
|
||||
});
|
||||
|
||||
@@ -1278,7 +1285,7 @@ limitations under the License.
|
||||
test('_startUpdateCheckTimer negative delay', () => {
|
||||
sandbox.stub(element, 'fetchIsLatestKnown');
|
||||
|
||||
element.serverConfig = {change: {update_delay: -1}};
|
||||
element._serverConfig = {change: {update_delay: -1}};
|
||||
|
||||
assert.isTrue(element._startUpdateCheckTimer.called);
|
||||
assert.isFalse(element.fetchIsLatestKnown.called);
|
||||
@@ -1288,7 +1295,7 @@ limitations under the License.
|
||||
sandbox.stub(element, 'fetchIsLatestKnown',
|
||||
() => { return Promise.resolve(true); });
|
||||
|
||||
element.serverConfig = {change: {update_delay: 12345}};
|
||||
element._serverConfig = {change: {update_delay: 12345}};
|
||||
|
||||
assert.isTrue(element._startUpdateCheckTimer.called);
|
||||
assert.isTrue(element.fetchIsLatestKnown.called);
|
||||
@@ -1301,7 +1308,7 @@ limitations under the License.
|
||||
element.addEventListener('show-alert', () => {
|
||||
done();
|
||||
});
|
||||
element.serverConfig = {change: {update_delay: 12345}};
|
||||
element._serverConfig = {change: {update_delay: 12345}};
|
||||
});
|
||||
});
|
||||
|
||||
|
@@ -127,7 +127,6 @@ limitations under the License.
|
||||
<template is="dom-if" if="[[_showChangeView]]" restamp="true">
|
||||
<gr-change-view
|
||||
params="[[params]]"
|
||||
server-config="[[_serverConfig]]"
|
||||
view-state="{{_viewState.changeView}}"
|
||||
back-page="[[_lastSearchPage]]"></gr-change-view>
|
||||
</template>
|
||||
|
Reference in New Issue
Block a user