Get rid of some global variables - Part 10

* Replace the following global variables with named imports:
  - Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES
  - Gerrit.RevisionInfo
  - Gerrit.CoverageType
* Update gr-app-global-var-init.js


Change-Id: I74cf944f7cc2675d1c80deb06091ef1ff07f40e0
This commit is contained in:
Dmitrii Filippov
2020-04-07 13:39:25 +02:00
parent 9fcdcb78da
commit d85c72ca62
12 changed files with 38 additions and 34 deletions

View File

@@ -43,7 +43,7 @@ import {LegacyElementMixin} from '@polymer/polymer/lib/legacy/legacy-element-mix
import {PolymerElement} from '@polymer/polymer/polymer-element.js';
import {htmlTemplate} from './gr-change-metadata_html.js';
import {RESTClientBehavior} from '../../../behaviors/rest-client-behavior/rest-client-behavior.js';
import {GrReviewerSuggestionsProvider} from '../../../scripts/gr-reviewer-suggestions-provider/gr-reviewer-suggestions-provider.js';
import {GrReviewerSuggestionsProvider, SUGGESTIONS_PROVIDERS_USERS_TYPES} from '../../../scripts/gr-reviewer-suggestions-provider/gr-reviewer-suggestions-provider.js';
import {GerritNav} from '../../core/gr-navigation/gr-navigation.js';
const HASHTAG_ADD_MESSAGE = 'Add Hashtag';
@@ -533,7 +533,7 @@ class GrChangeMetadata extends mixinBehaviors( [
_getReviewerSuggestionsProvider(change) {
const provider = GrReviewerSuggestionsProvider.create(this.$.restAPI,
change._number, Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.ANY);
change._number, SUGGESTIONS_PROVIDERS_USERS_TYPES.ANY);
provider.init();
return provider;
}

View File

@@ -63,6 +63,7 @@ import {util} from '../../../scripts/util.js';
import {GerritNav} from '../../core/gr-navigation/gr-navigation.js';
import {pluginEndpoints} from '../../shared/gr-js-api-interface/gr-plugin-endpoints.js';
import {pluginLoader} from '../../shared/gr-js-api-interface/gr-plugin-loader.js';
import {RevisionInfo} from '../../shared/revision-info/revision-info.js';
import {PrimaryTabs, SecondaryTabs} from '../../../constants/constants.js';
import {NO_ROBOT_COMMENTS_THREADS_MSG} from '../../../constants/messages.js';
@@ -2181,7 +2182,7 @@ class GrChangeView extends mixinBehaviors( [
}
_getRevisionInfo(change) {
return new Gerrit.RevisionInfo(change);
return new RevisionInfo(change);
}
_computeCurrentRevision(currentRevision, revisions) {

View File

@@ -41,7 +41,7 @@ import {BaseUrlBehavior} from '../../../behaviors/base-url-behavior/base-url-beh
import {PatchSetBehavior} from '../../../behaviors/gr-patch-set-behavior/gr-patch-set-behavior.js';
import {KeyboardShortcutBehavior} from '../../../behaviors/keyboard-shortcut-behavior/keyboard-shortcut-behavior.js';
import {RESTClientBehavior} from '../../../behaviors/rest-client-behavior/rest-client-behavior.js';
import {GrReviewerSuggestionsProvider} from '../../../scripts/gr-reviewer-suggestions-provider/gr-reviewer-suggestions-provider.js';
import {GrReviewerSuggestionsProvider, SUGGESTIONS_PROVIDERS_USERS_TYPES} from '../../../scripts/gr-reviewer-suggestions-provider/gr-reviewer-suggestions-provider.js';
import {GerritNav} from '../../core/gr-navigation/gr-navigation.js';
const STORAGE_DEBOUNCE_INTERVAL_MS = 400;
@@ -914,14 +914,14 @@ class GrReplyDialog extends mixinBehaviors( [
_getReviewerSuggestionsProvider(change) {
const provider = GrReviewerSuggestionsProvider.create(this.$.restAPI,
change._number, Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.REVIEWER);
change._number, SUGGESTIONS_PROVIDERS_USERS_TYPES.REVIEWER);
provider.init();
return provider;
}
_getCcSuggestionsProvider(change) {
const provider = GrReviewerSuggestionsProvider.create(this.$.restAPI,
change._number, Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.CC);
change._number, SUGGESTIONS_PROVIDERS_USERS_TYPES.CC);
provider.init();
return provider;
}

View File

@@ -16,17 +16,17 @@
*/
import '../../../scripts/bundled-polymer.js';
import '../../../types/types.js';
import {GestureEventListeners} from '@polymer/polymer/lib/mixins/gesture-event-listeners.js';
import {LegacyElementMixin} from '@polymer/polymer/lib/legacy/legacy-element-mixin.js';
import {PolymerElement} from '@polymer/polymer/polymer-element.js';
import {htmlTemplate} from './gr-coverage-layer_html.js';
import {CoverageType} from '../../../types/types.js';
const TOOLTIP_MAP = new Map([
[Gerrit.CoverageType.COVERED, 'Covered by tests.'],
[Gerrit.CoverageType.NOT_COVERED, 'Not covered by tests.'],
[Gerrit.CoverageType.PARTIALLY_COVERED, 'Partially covered by tests.'],
[Gerrit.CoverageType.NOT_INSTRUMENTED, 'Not instrumented by any tests.'],
[CoverageType.COVERED, 'Covered by tests.'],
[CoverageType.NOT_COVERED, 'Not covered by tests.'],
[CoverageType.PARTIALLY_COVERED, 'Partially covered by tests.'],
[CoverageType.NOT_INSTRUMENTED, 'Not instrumented by any tests.'],
]);
/** @extends Polymer.Element */

View File

@@ -47,6 +47,7 @@ import {KeyboardShortcutBehavior} from '../../../behaviors/keyboard-shortcut-beh
import {RESTClientBehavior} from '../../../behaviors/rest-client-behavior/rest-client-behavior.js';
import {GrCountStringFormatter} from '../../shared/gr-count-string-formatter/gr-count-string-formatter.js';
import {GerritNav} from '../../core/gr-navigation/gr-navigation.js';
import {RevisionInfo} from '../../shared/revision-info/revision-info.js';
const ERR_REVIEW_STATUS = 'Couldnt change file review status.';
const MSG_LOADING_BLAME = 'Loading blame...';
@@ -1247,7 +1248,7 @@ class GrDiffView extends mixinBehaviors( [
}
_getRevisionInfo(change) {
return new Gerrit.RevisionInfo(change);
return new RevisionInfo(change);
}
_computeFileNum(file, files) {

View File

@@ -47,6 +47,7 @@ import '../../shared/revision-info/revision-info.js';
import './gr-patch-range-select.js';
import '../gr-comment-api/gr-comment-api-mock_test.js';
import {dom} from '@polymer/polymer/lib/legacy/polymer.dom.js';
import {RevisionInfo} from '../../shared/revision-info/revision-info.js';
suite('gr-patch-range-select tests', () => {
let element;
let sandbox;
@@ -57,7 +58,7 @@ suite('gr-patch-range-select tests', () => {
for (let i = 0; i < revisions.length; i++) {
revisionObj[i] = revisions[i];
}
return new Gerrit.RevisionInfo({revisions: revisionObj});
return new RevisionInfo({revisions: revisionObj});
}
setup(() => {

View File

@@ -46,7 +46,7 @@ import {GrReviewerUpdatesParser} from './shared/gr-rest-api-interface/gr-reviewe
import {GrPopupInterface} from './plugins/gr-popup-interface/gr-popup-interface.js';
import {GrRangeNormalizer} from './diff/gr-diff-highlight/gr-range-normalizer.js';
import {GrCountStringFormatter} from './shared/gr-count-string-formatter/gr-count-string-formatter.js';
import {GrReviewerSuggestionsProvider} from '../scripts/gr-reviewer-suggestions-provider/gr-reviewer-suggestions-provider.js';
import {GrReviewerSuggestionsProvider, SUGGESTIONS_PROVIDERS_USERS_TYPES} from '../scripts/gr-reviewer-suggestions-provider/gr-reviewer-suggestions-provider.js';
import {util} from '../scripts/util.js';
import moment from 'moment/src/moment.js';
import page from 'page/page.mjs';
@@ -69,6 +69,8 @@ import {getBaseUrl, getPluginNameFromUrl, getRestAPI, PLUGIN_LOADING_TIMEOUT_MS,
import {GerritNav} from './core/gr-navigation/gr-navigation.js';
import {getRootElement} from '../scripts/rootElement.js';
import {rangesEqual} from './diff/gr-diff/gr-diff-utils.js';
import {RevisionInfo} from './shared/revision-info/revision-info.js';
import {CoverageType} from '../types/types.js';
export function initGlobalVariables() {
window.GrDisplayNameUtils = GrDisplayNameUtils;
@@ -136,4 +138,8 @@ export function initGlobalVariables() {
window.Gerrit.slotToContent = slot => slot;
window.Gerrit.rangesEqual = rangesEqual;
window.Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES =
SUGGESTIONS_PROVIDERS_USERS_TYPES;
window.Gerrit.RevisionInfo = RevisionInfo;
window.Gerrit.CoverageType = CoverageType;
}

View File

@@ -22,7 +22,7 @@ import {PatchSetBehavior} from '../../../behaviors/gr-patch-set-behavior/gr-patc
* @param {Object} change A change object resulting from a change detail
* call that includes revision information.
*/
function RevisionInfo(change) {
export function RevisionInfo(change) {
this._change = change;
}
@@ -79,6 +79,3 @@ RevisionInfo.prototype.getParentId = function(patchNum, parentIndex) {
PatchSetBehavior.patchNumEquals(rev._number, patchNum));
return rev.commit.parents[parentIndex].commit;
};
window.Gerrit = window.Gerrit || {};
window.Gerrit.RevisionInfo = RevisionInfo;

View File

@@ -27,6 +27,7 @@ limitations under the License.
<script type="module">
import '../../../test/common-test-setup.js';
import './revision-info.js';
import {RevisionInfo} from './revision-info.js';
suite('revision-info tests', () => {
let mockChange;
@@ -57,29 +58,29 @@ suite('revision-info tests', () => {
});
test('getMaxParents', () => {
const ri = new window.Gerrit.RevisionInfo(mockChange);
const ri = new RevisionInfo(mockChange);
assert.equal(ri.getMaxParents(), 3);
});
test('getParentCountMap', () => {
const ri = new window.Gerrit.RevisionInfo(mockChange);
const ri = new RevisionInfo(mockChange);
assert.deepEqual(ri.getParentCountMap(), {1: 3, 2: 2, 3: 1, 4: 2, 5: 3});
});
test('getParentCount', () => {
const ri = new window.Gerrit.RevisionInfo(mockChange);
const ri = new RevisionInfo(mockChange);
assert.deepEqual(ri.getParentCount(1), 3);
assert.deepEqual(ri.getParentCount(3), 1);
});
test('getParentCount', () => {
const ri = new window.Gerrit.RevisionInfo(mockChange);
const ri = new RevisionInfo(mockChange);
assert.deepEqual(ri.getParentCount(1), 3);
assert.deepEqual(ri.getParentCount(3), 1);
});
test('getParentId', () => {
const ri = new window.Gerrit.RevisionInfo(mockChange);
const ri = new RevisionInfo(mockChange);
assert.deepEqual(ri.getParentId(1, 2), 'p3');
assert.deepEqual(ri.getParentId(2, 1), 'p4');
assert.deepEqual(ri.getParentId(3, 0), 'p5');

View File

@@ -16,11 +16,10 @@
*/
import {GrDisplayNameUtils} from '../gr-display-name-utils/gr-display-name-utils.js';
window.Gerrit = window.Gerrit || {};
/**
* @enum {string}
*/
Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES = {
export const SUGGESTIONS_PROVIDERS_USERS_TYPES = {
REVIEWER: 'reviewers',
CC: 'ccs',
ANY: 'any',
@@ -29,14 +28,14 @@ Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES = {
export class GrReviewerSuggestionsProvider {
static create(restApi, changeNumber, usersType) {
switch (usersType) {
case Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.REVIEWER:
case SUGGESTIONS_PROVIDERS_USERS_TYPES.REVIEWER:
return new GrReviewerSuggestionsProvider(restApi, changeNumber,
input => restApi.getChangeSuggestedReviewers(changeNumber,
input));
case Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.CC:
case SUGGESTIONS_PROVIDERS_USERS_TYPES.CC:
return new GrReviewerSuggestionsProvider(restApi, changeNumber,
input => restApi.getChangeSuggestedCCs(changeNumber, input));
case Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.ANY:
case SUGGESTIONS_PROVIDERS_USERS_TYPES.ANY:
return new GrReviewerSuggestionsProvider(restApi, changeNumber,
input => restApi.getSuggestedAccounts(
`cansee:${changeNumber} ${input}`));

View File

@@ -34,7 +34,7 @@ limitations under the License.
import '../../test/common-test-setup.js';
import '../../elements/shared/gr-rest-api-interface/gr-rest-api-interface.js';
import {GrDisplayNameUtils} from '../gr-display-name-utils/gr-display-name-utils.js';
import {GrReviewerSuggestionsProvider} from './gr-reviewer-suggestions-provider.js';
import {GrReviewerSuggestionsProvider, SUGGESTIONS_PROVIDERS_USERS_TYPES} from './gr-reviewer-suggestions-provider.js';
suite('GrReviewerSuggestionsProvider tests', () => {
let sandbox;
@@ -109,7 +109,7 @@ suite('GrReviewerSuggestionsProvider tests', () => {
suite('allowAnyUser set to false', () => {
setup(done => {
provider = GrReviewerSuggestionsProvider.create(restAPI, change._number,
Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.REVIEWER);
SUGGESTIONS_PROVIDERS_USERS_TYPES.REVIEWER);
provider.init().then(done);
});
suite('stubbed values for _getReviewerSuggestions', () => {
@@ -236,7 +236,7 @@ suite('GrReviewerSuggestionsProvider tests', () => {
suite('allowAnyUser set to true', () => {
setup(done => {
provider = GrReviewerSuggestionsProvider.create(restAPI, change._number,
Gerrit.SUGGESTIONS_PROVIDERS_USERS_TYPES.ANY);
SUGGESTIONS_PROVIDERS_USERS_TYPES.ANY);
provider.init().then(done);
});

View File

@@ -17,10 +17,8 @@
// Type definitions used across multiple files in Gerrit
window.Gerrit = window.Gerrit || {};
/** @enum {string} */
Gerrit.CoverageType = {
export const CoverageType = {
/**
* start_character and end_character of the range will be ignored for this
* type.