@theia/plugin-metrics 1.77.0-next.7 → 1.77.0-next.71

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/lib/browser/plugin-metrics-languages-main.js +1 -1
  2. package/lib/browser/plugin-metrics-languages-main.js.map +1 -1
  3. package/lib/browser-only/browser-only-plugin-metrics.d.ts +10 -0
  4. package/lib/browser-only/browser-only-plugin-metrics.d.ts.map +1 -0
  5. package/lib/browser-only/browser-only-plugin-metrics.js +35 -0
  6. package/lib/browser-only/browser-only-plugin-metrics.js.map +1 -0
  7. package/lib/browser-only/browser-only-plugin-metrics.spec.d.ts +2 -0
  8. package/lib/browser-only/browser-only-plugin-metrics.spec.d.ts.map +1 -0
  9. package/lib/browser-only/browser-only-plugin-metrics.spec.js +43 -0
  10. package/lib/browser-only/browser-only-plugin-metrics.spec.js.map +1 -0
  11. package/lib/browser-only/plugin-metrics-frontend-only-module.d.ts +4 -0
  12. package/lib/browser-only/plugin-metrics-frontend-only-module.d.ts.map +1 -0
  13. package/lib/browser-only/plugin-metrics-frontend-only-module.js +31 -0
  14. package/lib/browser-only/plugin-metrics-frontend-only-module.js.map +1 -0
  15. package/lib/node/metrics-contributor.spec.js +2 -1
  16. package/lib/node/metrics-contributor.spec.js.map +1 -1
  17. package/lib/node/plugin-metrics-impl.d.ts.map +1 -1
  18. package/lib/node/plugin-metrics-impl.js +0 -1
  19. package/lib/node/plugin-metrics-impl.js.map +1 -1
  20. package/lib/node/plugin-metrics.d.ts.map +1 -1
  21. package/lib/node/plugin-metrics.js +3 -0
  22. package/lib/node/plugin-metrics.js.map +1 -1
  23. package/lib/node/plugin-metrics.spec.d.ts +2 -0
  24. package/lib/node/plugin-metrics.spec.d.ts.map +1 -0
  25. package/lib/node/plugin-metrics.spec.js +70 -0
  26. package/lib/node/plugin-metrics.spec.js.map +1 -0
  27. package/package.json +7 -6
  28. package/src/browser-only/browser-only-plugin-metrics.spec.ts +44 -0
  29. package/src/browser-only/browser-only-plugin-metrics.ts +32 -0
  30. package/src/browser-only/plugin-metrics-frontend-only-module.ts +29 -0
  31. package/src/node/plugin-metrics-impl.ts +1 -2
  32. package/src/node/plugin-metrics.spec.ts +80 -0
  33. package/src/node/plugin-metrics.ts +1 -1
@@ -20,7 +20,7 @@ const tslib_1 = require("tslib");
20
20
  const plugin_metrics_resolver_1 = require("./plugin-metrics-resolver");
21
21
  const languages_main_1 = require("@theia/plugin-ext/lib/main/browser/languages-main");
22
22
  const inversify_1 = require("@theia/core/shared/inversify");
23
- const vst = require("@theia/core/shared/vscode-languageserver-protocol");
23
+ const vst = tslib_1.__importStar(require("@theia/core/shared/vscode-languageserver-protocol"));
24
24
  let LanguagesMainPluginMetrics = class LanguagesMainPluginMetrics extends languages_main_1.LanguagesMainImpl {
25
25
  constructor() {
26
26
  super(...arguments);
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-metrics-languages-main.js","sourceRoot":"","sources":["../../src/browser/plugin-metrics-languages-main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-metrics-languages-main.js","sourceRoot":"","sources":["../../src/browser/plugin-metrics-languages-main.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { PluginMetrics } from '../common/metrics-protocol';
2
+ /**
3
+ * Browser-only apps have no backend to expose metrics, so they are dropped. The `frontend` module
4
+ * isn't loaded there, so this binding is what keeps `PluginMetrics` injectable.
5
+ */
6
+ export declare class BrowserOnlyPluginMetrics implements PluginMetrics {
7
+ setMetrics(_metrics: string): void;
8
+ getMetrics(): string;
9
+ }
10
+ //# sourceMappingURL=browser-only-plugin-metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-only-plugin-metrics.d.ts","sourceRoot":"","sources":["../../src/browser-only/browser-only-plugin-metrics.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D;;;GAGG;AACH,qBACa,wBAAyB,YAAW,aAAa;IAE1D,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAElC,UAAU,IAAI,MAAM;CAGvB"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Robert Jandow
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.BrowserOnlyPluginMetrics = void 0;
19
+ const tslib_1 = require("tslib");
20
+ const inversify_1 = require("@theia/core/shared/inversify");
21
+ /**
22
+ * Browser-only apps have no backend to expose metrics, so they are dropped. The `frontend` module
23
+ * isn't loaded there, so this binding is what keeps `PluginMetrics` injectable.
24
+ */
25
+ let BrowserOnlyPluginMetrics = class BrowserOnlyPluginMetrics {
26
+ setMetrics(_metrics) { }
27
+ getMetrics() {
28
+ return '';
29
+ }
30
+ };
31
+ exports.BrowserOnlyPluginMetrics = BrowserOnlyPluginMetrics;
32
+ exports.BrowserOnlyPluginMetrics = BrowserOnlyPluginMetrics = tslib_1.__decorate([
33
+ (0, inversify_1.injectable)()
34
+ ], BrowserOnlyPluginMetrics);
35
+ //# sourceMappingURL=browser-only-plugin-metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-only-plugin-metrics.js","sourceRoot":"","sources":["../../src/browser-only/browser-only-plugin-metrics.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,mCAAmC;AACnC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAA0D;AAG1D;;;GAGG;AAEI,IAAM,wBAAwB,GAA9B,MAAM,wBAAwB;IAEjC,UAAU,CAAC,QAAgB,IAAU,CAAC;IAEtC,UAAU;QACN,OAAO,EAAE,CAAC;IACd,CAAC;CACJ,CAAA;AAPY,4DAAwB;mCAAxB,wBAAwB;IADpC,IAAA,sBAAU,GAAE;GACA,wBAAwB,CAOpC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=browser-only-plugin-metrics.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-only-plugin-metrics.spec.d.ts","sourceRoot":"","sources":["../../src/browser-only/browser-only-plugin-metrics.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Robert Jandow
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const tslib_1 = require("tslib");
19
+ const inversify_1 = require("@theia/core/shared/inversify");
20
+ const chai_1 = require("chai");
21
+ const metrics_protocol_1 = require("../common/metrics-protocol");
22
+ const browser_only_plugin_metrics_1 = require("./browser-only-plugin-metrics");
23
+ const plugin_metrics_frontend_only_module_1 = tslib_1.__importDefault(require("./plugin-metrics-frontend-only-module"));
24
+ describe('browser-only plugin metrics', () => {
25
+ it('binds the no-op metrics', () => {
26
+ const container = new inversify_1.Container();
27
+ container.load(plugin_metrics_frontend_only_module_1.default);
28
+ const metrics = container.get(metrics_protocol_1.PluginMetrics);
29
+ (0, chai_1.expect)(metrics).to.be.instanceOf(browser_only_plugin_metrics_1.BrowserOnlyPluginMetrics);
30
+ (0, chai_1.expect)(() => metrics.setMetrics('metric 1')).not.to.throw();
31
+ (0, chai_1.expect)(metrics.getMetrics()).to.equal('');
32
+ });
33
+ it('replaces an existing metrics binding', () => {
34
+ const container = new inversify_1.Container();
35
+ container.bind(metrics_protocol_1.PluginMetrics).toConstantValue({
36
+ setMetrics: () => { },
37
+ getMetrics: () => 'existing'
38
+ });
39
+ container.load(plugin_metrics_frontend_only_module_1.default);
40
+ (0, chai_1.expect)(container.get(metrics_protocol_1.PluginMetrics)).to.be.instanceOf(browser_only_plugin_metrics_1.BrowserOnlyPluginMetrics);
41
+ });
42
+ });
43
+ //# sourceMappingURL=browser-only-plugin-metrics.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-only-plugin-metrics.spec.js","sourceRoot":"","sources":["../../src/browser-only/browser-only-plugin-metrics.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,mCAAmC;AACnC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,4DAAyD;AACzD,+BAA8B;AAC9B,iEAA2D;AAC3D,+EAAyE;AACzE,wHAAoF;AAEpF,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACzC,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QAC/B,MAAM,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;QAClC,SAAS,CAAC,IAAI,CAAC,6CAA+B,CAAC,CAAC;QAEhD,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAgB,gCAAa,CAAC,CAAC;QAC5D,IAAA,aAAM,EAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,sDAAwB,CAAC,CAAC;QAC3D,IAAA,aAAM,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;QAC5D,IAAA,aAAM,EAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC5C,MAAM,SAAS,GAAG,IAAI,qBAAS,EAAE,CAAC;QAClC,SAAS,CAAC,IAAI,CAAC,gCAAa,CAAC,CAAC,eAAe,CAAC;YAC1C,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC;YACrB,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU;SAC/B,CAAC,CAAC;QACH,SAAS,CAAC,IAAI,CAAC,6CAA+B,CAAC,CAAC;QAEhD,IAAA,aAAM,EAAC,SAAS,CAAC,GAAG,CAAC,gCAAa,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,sDAAwB,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { ContainerModule } from '@theia/core/shared/inversify';
2
+ declare const _default: ContainerModule;
3
+ export default _default;
4
+ //# sourceMappingURL=plugin-metrics-frontend-only-module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-metrics-frontend-only-module.d.ts","sourceRoot":"","sources":["../../src/browser-only/plugin-metrics-frontend-only-module.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;;AAK/D,wBAOG"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Robert Jandow
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const inversify_1 = require("@theia/core/shared/inversify");
19
+ const metrics_protocol_1 = require("../common/metrics-protocol");
20
+ const browser_only_plugin_metrics_1 = require("./browser-only-plugin-metrics");
21
+ // Loaded instead of the `frontend` module, so plugin API calls aren't wrapped to collect metrics.
22
+ exports.default = new inversify_1.ContainerModule((bind, _unbind, isBound, rebind) => {
23
+ bind(browser_only_plugin_metrics_1.BrowserOnlyPluginMetrics).toSelf().inSingletonScope();
24
+ if (isBound(metrics_protocol_1.PluginMetrics)) {
25
+ rebind(metrics_protocol_1.PluginMetrics).toService(browser_only_plugin_metrics_1.BrowserOnlyPluginMetrics);
26
+ }
27
+ else {
28
+ bind(metrics_protocol_1.PluginMetrics).toService(browser_only_plugin_metrics_1.BrowserOnlyPluginMetrics);
29
+ }
30
+ });
31
+ //# sourceMappingURL=plugin-metrics-frontend-only-module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-metrics-frontend-only-module.js","sourceRoot":"","sources":["../../src/browser-only/plugin-metrics-frontend-only-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,mCAAmC;AACnC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;AAEhF,4DAA+D;AAC/D,iEAA2D;AAC3D,+EAAyE;AAEzE,kGAAkG;AAClG,kBAAe,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;IAClE,IAAI,CAAC,sDAAwB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAC3D,IAAI,OAAO,CAAC,gCAAa,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,gCAAa,CAAC,CAAC,SAAS,CAAC,sDAAwB,CAAC,CAAC;IAC9D,CAAC;SAAM,CAAC;QACJ,IAAI,CAAC,gCAAa,CAAC,CAAC,SAAS,CAAC,sDAAwB,CAAC,CAAC;IAC5D,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -15,11 +15,12 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
+ const tslib_1 = require("tslib");
18
19
  const metrics_contributor_1 = require("./metrics-contributor");
19
20
  const inversify_1 = require("@theia/core/shared/inversify");
20
21
  const plugin_metrics_impl_1 = require("./plugin-metrics-impl");
21
22
  const metrics_protocol_1 = require("../common/metrics-protocol");
22
- const assert = require("assert");
23
+ const assert = tslib_1.__importStar(require("assert"));
23
24
  const logger_1 = require("@theia/core/lib/common/logger");
24
25
  const mock_logger_1 = require("@theia/core/lib/common/test/mock-logger");
25
26
  describe('Metrics contributor:', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"metrics-contributor.spec.js","sourceRoot":"","sources":["../../src/node/metrics-contributor.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics-contributor.spec.js","sourceRoot":"","sources":["../../src/node/metrics-contributor.spec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-metrics-impl.d.ts","sourceRoot":"","sources":["../../src/node/plugin-metrics-impl.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,qBACa,iBAAkB,YAAW,aAAa;IAEnD,OAAO,CAAC,OAAO,CAAgB;IAG/B,UAAU,CAAC,OAAO,EAAE,MAAM;IAI1B;;;OAGG;IACH,UAAU,IAAI,MAAM;CAIvB"}
1
+ {"version":3,"file":"plugin-metrics-impl.d.ts","sourceRoot":"","sources":["../../src/node/plugin-metrics-impl.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,qBACa,iBAAkB,YAAW,aAAa;IAEnD,OAAO,CAAC,OAAO,CAAgB;IAE/B,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAIjC;;;OAGG;IACH,UAAU,IAAI,MAAM;CAIvB"}
@@ -22,7 +22,6 @@ let PluginMetricsImpl = class PluginMetricsImpl {
22
22
  constructor() {
23
23
  this.metrics = '{}';
24
24
  }
25
- // tslint:disable-next-line:typedef
26
25
  setMetrics(metrics) {
27
26
  this.metrics = metrics;
28
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-metrics-impl.js","sourceRoot":"","sources":["../../src/node/plugin-metrics-impl.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAA0D;AAInD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAAvB;QAEK,YAAO,GAAW,IAAI,CAAC;IAenC,CAAC;IAbG,mCAAmC;IACnC,UAAU,CAAC,OAAe;QACtB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;CAEJ,CAAA;AAjBY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,sBAAU,GAAE;GACA,iBAAiB,CAiB7B"}
1
+ {"version":3,"file":"plugin-metrics-impl.js","sourceRoot":"","sources":["../../src/node/plugin-metrics-impl.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAA0D;AAInD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAAvB;QAEK,YAAO,GAAW,IAAI,CAAC;IAcnC,CAAC;IAZG,UAAU,CAAC,OAAe;QACtB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED;;;OAGG;IACH,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;CAEJ,CAAA;AAhBY,8CAAiB;4BAAjB,iBAAiB;IAD7B,IAAA,sBAAU,GAAE;GACA,iBAAiB,CAgB7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-metrics.d.ts","sourceRoot":"","sources":["../../src/node/plugin-metrics.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAEnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAExE,qBACa,yBAA0B,YAAW,mBAAmB;IAGjE,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,2BAA2B,CAAC;IAEhE,OAAO,CAAC,OAAO,CAAS;IAExB,UAAU,IAAI,MAAM;IAIpB,eAAe,IAAI,IAAI;CAM1B"}
1
+ {"version":3,"file":"plugin-metrics.d.ts","sourceRoot":"","sources":["../../src/node/plugin-metrics.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AAEnF,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AAExE,qBACa,yBAA0B,YAAW,mBAAmB;IAGjE,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IAGhE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,2BAA2B,CAAC;IAEhE,OAAO,CAAC,OAAO,CAAM;IAErB,UAAU,IAAI,MAAM;IAIpB,eAAe,IAAI,IAAI;CAM1B"}
@@ -22,6 +22,9 @@ const metrics_protocol_1 = require("../common/metrics-protocol");
22
22
  const metrics_contributor_1 = require("./metrics-contributor");
23
23
  const metric_string_generator_1 = require("./metric-string-generator");
24
24
  let PluginMetricsContribution = class PluginMetricsContribution {
25
+ constructor() {
26
+ this.metrics = '';
27
+ }
25
28
  getMetrics() {
26
29
  return this.metrics;
27
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-metrics.js","sourceRoot":"","sources":["../../src/node/plugin-metrics.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAkE;AAElE,iEAA6D;AAC7D,+DAAiE;AACjE,uEAAwE;AAGjE,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAUlC,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,eAAe;QACX,WAAW,CAAC,GAAG,EAAE;YACb,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;YAC9D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAC5E,CAAC,EAAE,kCAAe,CAAC,CAAC;IACxB,CAAC;CACJ,CAAA;AApBY,8DAAyB;AAGf;IADlB,IAAA,kBAAM,EAAC,8CAAwB,CAAC;sCACM,8CAAwB;qEAAC;AAG7C;IADlB,IAAA,kBAAM,EAAC,qDAA2B,CAAC;sCACA,qDAA2B;kEAAC;oCANvD,yBAAyB;IADrC,IAAA,sBAAU,GAAE;GACA,yBAAyB,CAoBrC"}
1
+ {"version":3,"file":"plugin-metrics.js","sourceRoot":"","sources":["../../src/node/plugin-metrics.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,+CAA+C;AAC/C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAkE;AAElE,iEAA6D;AAC7D,+DAAiE;AACjE,uEAAwE;AAGjE,IAAM,yBAAyB,GAA/B,MAAM,yBAAyB;IAA/B;QAQK,YAAO,GAAG,EAAE,CAAC;IAYzB,CAAC;IAVG,UAAU;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,eAAe;QACX,WAAW,CAAC,GAAG,EAAE;YACb,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC;YAC9D,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAC5E,CAAC,EAAE,kCAAe,CAAC,CAAC;IACxB,CAAC;CACJ,CAAA;AApBY,8DAAyB;AAGf;IADlB,IAAA,kBAAM,EAAC,8CAAwB,CAAC;sCACM,8CAAwB;qEAAC;AAG7C;IADlB,IAAA,kBAAM,EAAC,qDAA2B,CAAC;sCACA,qDAA2B;kEAAC;oCANvD,yBAAyB;IADrC,IAAA,sBAAU,GAAE;GACA,yBAAyB,CAoBrC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=plugin-metrics.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-metrics.spec.d.ts","sourceRoot":"","sources":["../../src/node/plugin-metrics.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2026 Sahil Gupta and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const tslib_1 = require("tslib");
19
+ const inversify_1 = require("@theia/core/shared/inversify");
20
+ const plugin_metrics_1 = require("./plugin-metrics");
21
+ const metrics_contributor_1 = require("./metrics-contributor");
22
+ const metric_string_generator_1 = require("./metric-string-generator");
23
+ const metrics_protocol_1 = require("../common/metrics-protocol");
24
+ const assert = tslib_1.__importStar(require("assert"));
25
+ const sinon = tslib_1.__importStar(require("sinon"));
26
+ const COLLECTED_METRICS = 'test_metric 42\n';
27
+ describe('PluginMetricsContribution:', () => {
28
+ let testContainer;
29
+ let contribution;
30
+ let clock;
31
+ beforeEach(() => {
32
+ clock = sinon.useFakeTimers();
33
+ testContainer = new inversify_1.Container();
34
+ // Stub dependencies
35
+ const stubContributor = {
36
+ reconcile: () => ({})
37
+ };
38
+ const stubGenerator = {
39
+ getMetricsString: () => COLLECTED_METRICS
40
+ };
41
+ const module = new inversify_1.ContainerModule(bind => {
42
+ bind(metrics_contributor_1.PluginMetricsContributor).toConstantValue(stubContributor);
43
+ bind(metric_string_generator_1.PluginMetricStringGenerator).toConstantValue(stubGenerator);
44
+ bind(plugin_metrics_1.PluginMetricsContribution).toSelf().inSingletonScope();
45
+ });
46
+ testContainer.load(module);
47
+ contribution = testContainer.get(plugin_metrics_1.PluginMetricsContribution);
48
+ });
49
+ afterEach(() => {
50
+ clock.restore();
51
+ });
52
+ describe('getMetrics:', () => {
53
+ it('should return empty string instead of undefined before startCollecting runs', () => {
54
+ // When getMetrics is called before the interval has collected any data
55
+ const metrics = contribution.getMetrics();
56
+ // Then it returns an empty string, not undefined
57
+ assert.strictEqual(metrics, '');
58
+ assert.strictEqual(typeof metrics, 'string');
59
+ });
60
+ it('should return the collected metrics once the collection interval has elapsed', () => {
61
+ contribution.startCollecting();
62
+ // The interval has not yet fired, so nothing has been collected
63
+ assert.strictEqual(contribution.getMetrics(), '');
64
+ clock.tick(metrics_protocol_1.METRICS_TIMEOUT);
65
+ // The interval has fired, so the generated metrics string is returned
66
+ assert.strictEqual(contribution.getMetrics(), COLLECTED_METRICS);
67
+ });
68
+ });
69
+ });
70
+ //# sourceMappingURL=plugin-metrics.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-metrics.spec.js","sourceRoot":"","sources":["../../src/node/plugin-metrics.spec.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,6CAA6C;AAC7C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,4DAA0E;AAC1E,qDAA6D;AAC7D,+DAAiE;AACjE,uEAAwE;AACxE,iEAA6D;AAC7D,uDAAiC;AACjC,qDAA+B;AAE/B,MAAM,iBAAiB,GAAG,kBAAkB,CAAC;AAE7C,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IACxC,IAAI,aAAwB,CAAC;IAC7B,IAAI,YAAuC,CAAC;IAC5C,IAAI,KAA4B,CAAC;IAEjC,UAAU,CAAC,GAAG,EAAE;QACZ,KAAK,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;QAC9B,aAAa,GAAG,IAAI,qBAAS,EAAE,CAAC;QAEhC,oBAAoB;QACpB,MAAM,eAAe,GAAsC;YACvD,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;SACxB,CAAC;QACF,MAAM,aAAa,GAAyC;YACxD,gBAAgB,EAAE,GAAG,EAAE,CAAC,iBAAiB;SAC5C,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,2BAAe,CAAC,IAAI,CAAC,EAAE;YACtC,IAAI,CAAC,8CAAwB,CAAC,CAAC,eAAe,CAAC,eAAsD,CAAC,CAAC;YACvG,IAAI,CAAC,qDAA2B,CAAC,CAAC,eAAe,CAAC,aAAuD,CAAC,CAAC;YAC3G,IAAI,CAAC,0CAAyB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,0CAAyB,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACX,KAAK,CAAC,OAAO,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,6EAA6E,EAAE,GAAG,EAAE;YACnF,uEAAuE;YACvE,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,EAAE,CAAC;YAE1C,iDAAiD;YACjD,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAChC,MAAM,CAAC,WAAW,CAAC,OAAO,OAAO,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;YACpF,YAAY,CAAC,eAAe,EAAE,CAAC;YAE/B,gEAAgE;YAChE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC;YAElD,KAAK,CAAC,IAAI,CAAC,kCAAe,CAAC,CAAC;YAE5B,sEAAsE;YACtE,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,UAAU,EAAE,EAAE,iBAAiB,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@theia/plugin-metrics",
3
- "version": "1.77.0-next.7+b88a5a9c5f7",
3
+ "version": "1.77.0-next.71+2c7849bc5",
4
4
  "description": "Theia - Plugin Metrics",
5
5
  "dependencies": {
6
- "@theia/core": "1.77.0-next.7+b88a5a9c5f7",
7
- "@theia/metrics": "1.77.0-next.7+b88a5a9c5f7",
6
+ "@theia/core": "1.77.0-next.71+2c7849bc5",
7
+ "@theia/metrics": "1.77.0-next.71+2c7849bc5",
8
8
  "@theia/monaco-editor-core": "1.108.201",
9
- "@theia/plugin": "1.77.0-next.7+b88a5a9c5f7",
10
- "@theia/plugin-ext": "1.77.0-next.7+b88a5a9c5f7",
9
+ "@theia/plugin": "1.77.0-next.71+2c7849bc5",
10
+ "@theia/plugin-ext": "1.77.0-next.71+2c7849bc5",
11
11
  "tslib": "^2.8.1"
12
12
  },
13
13
  "publishConfig": {
@@ -16,6 +16,7 @@
16
16
  "theiaExtensions": [
17
17
  {
18
18
  "frontend": "lib/browser/plugin-metrics-frontend-module",
19
+ "frontendOnly": "lib/browser-only/plugin-metrics-frontend-only-module",
19
20
  "backend": "lib/node/plugin-metrics-backend-module"
20
21
  }
21
22
  ],
@@ -49,5 +50,5 @@
49
50
  "nyc": {
50
51
  "extends": "../../configs/nyc.json"
51
52
  },
52
- "gitHead": "b88a5a9c5f7ba08e59aaef3d9a53e62b17bd0b5a"
53
+ "gitHead": "2c7849bc57402bea84eed2fe2bcda4eedcedb2f4"
53
54
  }
@@ -0,0 +1,44 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 Robert Jandow
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { Container } from '@theia/core/shared/inversify';
18
+ import { expect } from 'chai';
19
+ import { PluginMetrics } from '../common/metrics-protocol';
20
+ import { BrowserOnlyPluginMetrics } from './browser-only-plugin-metrics';
21
+ import pluginMetricsFrontendOnlyModule from './plugin-metrics-frontend-only-module';
22
+
23
+ describe('browser-only plugin metrics', () => {
24
+ it('binds the no-op metrics', () => {
25
+ const container = new Container();
26
+ container.load(pluginMetricsFrontendOnlyModule);
27
+
28
+ const metrics = container.get<PluginMetrics>(PluginMetrics);
29
+ expect(metrics).to.be.instanceOf(BrowserOnlyPluginMetrics);
30
+ expect(() => metrics.setMetrics('metric 1')).not.to.throw();
31
+ expect(metrics.getMetrics()).to.equal('');
32
+ });
33
+
34
+ it('replaces an existing metrics binding', () => {
35
+ const container = new Container();
36
+ container.bind(PluginMetrics).toConstantValue({
37
+ setMetrics: () => { },
38
+ getMetrics: () => 'existing'
39
+ });
40
+ container.load(pluginMetricsFrontendOnlyModule);
41
+
42
+ expect(container.get(PluginMetrics)).to.be.instanceOf(BrowserOnlyPluginMetrics);
43
+ });
44
+ });
@@ -0,0 +1,32 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 Robert Jandow
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { injectable } from '@theia/core/shared/inversify';
18
+ import { PluginMetrics } from '../common/metrics-protocol';
19
+
20
+ /**
21
+ * Browser-only apps have no backend to expose metrics, so they are dropped. The `frontend` module
22
+ * isn't loaded there, so this binding is what keeps `PluginMetrics` injectable.
23
+ */
24
+ @injectable()
25
+ export class BrowserOnlyPluginMetrics implements PluginMetrics {
26
+
27
+ setMetrics(_metrics: string): void { }
28
+
29
+ getMetrics(): string {
30
+ return '';
31
+ }
32
+ }
@@ -0,0 +1,29 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 Robert Jandow
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { ContainerModule } from '@theia/core/shared/inversify';
18
+ import { PluginMetrics } from '../common/metrics-protocol';
19
+ import { BrowserOnlyPluginMetrics } from './browser-only-plugin-metrics';
20
+
21
+ // Loaded instead of the `frontend` module, so plugin API calls aren't wrapped to collect metrics.
22
+ export default new ContainerModule((bind, _unbind, isBound, rebind) => {
23
+ bind(BrowserOnlyPluginMetrics).toSelf().inSingletonScope();
24
+ if (isBound(PluginMetrics)) {
25
+ rebind(PluginMetrics).toService(BrowserOnlyPluginMetrics);
26
+ } else {
27
+ bind(PluginMetrics).toService(BrowserOnlyPluginMetrics);
28
+ }
29
+ });
@@ -22,8 +22,7 @@ export class PluginMetricsImpl implements PluginMetrics {
22
22
 
23
23
  private metrics: string = '{}';
24
24
 
25
- // tslint:disable-next-line:typedef
26
- setMetrics(metrics: string) {
25
+ setMetrics(metrics: string): void {
27
26
  this.metrics = metrics;
28
27
  }
29
28
 
@@ -0,0 +1,80 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2026 Sahil Gupta and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { Container, ContainerModule } from '@theia/core/shared/inversify';
18
+ import { PluginMetricsContribution } from './plugin-metrics';
19
+ import { PluginMetricsContributor } from './metrics-contributor';
20
+ import { PluginMetricStringGenerator } from './metric-string-generator';
21
+ import { METRICS_TIMEOUT } from '../common/metrics-protocol';
22
+ import * as assert from 'assert';
23
+ import * as sinon from 'sinon';
24
+
25
+ const COLLECTED_METRICS = 'test_metric 42\n';
26
+
27
+ describe('PluginMetricsContribution:', () => {
28
+ let testContainer: Container;
29
+ let contribution: PluginMetricsContribution;
30
+ let clock: sinon.SinonFakeTimers;
31
+
32
+ beforeEach(() => {
33
+ clock = sinon.useFakeTimers();
34
+ testContainer = new Container();
35
+
36
+ // Stub dependencies
37
+ const stubContributor: Partial<PluginMetricsContributor> = {
38
+ reconcile: () => ({})
39
+ };
40
+ const stubGenerator: Partial<PluginMetricStringGenerator> = {
41
+ getMetricsString: () => COLLECTED_METRICS
42
+ };
43
+
44
+ const module = new ContainerModule(bind => {
45
+ bind(PluginMetricsContributor).toConstantValue(stubContributor as unknown as PluginMetricsContributor);
46
+ bind(PluginMetricStringGenerator).toConstantValue(stubGenerator as unknown as PluginMetricStringGenerator);
47
+ bind(PluginMetricsContribution).toSelf().inSingletonScope();
48
+ });
49
+
50
+ testContainer.load(module);
51
+ contribution = testContainer.get(PluginMetricsContribution);
52
+ });
53
+
54
+ afterEach(() => {
55
+ clock.restore();
56
+ });
57
+
58
+ describe('getMetrics:', () => {
59
+ it('should return empty string instead of undefined before startCollecting runs', () => {
60
+ // When getMetrics is called before the interval has collected any data
61
+ const metrics = contribution.getMetrics();
62
+
63
+ // Then it returns an empty string, not undefined
64
+ assert.strictEqual(metrics, '');
65
+ assert.strictEqual(typeof metrics, 'string');
66
+ });
67
+
68
+ it('should return the collected metrics once the collection interval has elapsed', () => {
69
+ contribution.startCollecting();
70
+
71
+ // The interval has not yet fired, so nothing has been collected
72
+ assert.strictEqual(contribution.getMetrics(), '');
73
+
74
+ clock.tick(METRICS_TIMEOUT);
75
+
76
+ // The interval has fired, so the generated metrics string is returned
77
+ assert.strictEqual(contribution.getMetrics(), COLLECTED_METRICS);
78
+ });
79
+ });
80
+ });
@@ -29,7 +29,7 @@ export class PluginMetricsContribution implements MetricsContribution {
29
29
  @inject(PluginMetricStringGenerator)
30
30
  protected readonly stringGenerator: PluginMetricStringGenerator;
31
31
 
32
- private metrics: string;
32
+ private metrics = '';
33
33
 
34
34
  getMetrics(): string {
35
35
  return this.metrics;