@powersync/service-core-tests 0.0.0-dev-20250310190630 → 0.0.0-dev-20250312090341
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.
- package/CHANGELOG.md +3 -7
- package/dist/test-utils/metrics-utils.d.ts +2 -0
- package/dist/test-utils/metrics-utils.js +13 -0
- package/dist/test-utils/metrics-utils.js.map +1 -0
- package/dist/test-utils/test-utils-index.d.ts +1 -1
- package/dist/test-utils/test-utils-index.js +1 -1
- package/dist/tests/register-sync-tests.js +2 -4
- package/dist/tests/register-sync-tests.js.map +1 -1
- package/package.json +3 -4
- package/src/test-utils/metrics-utils.ts +14 -0
- package/src/test-utils/test-utils-index.ts +1 -1
- package/src/tests/register-sync-tests.ts +2 -4
- package/tsconfig.tsbuildinfo +1 -1
- package/dist/test-utils/MetricsHelper.d.ts +0 -12
- package/dist/test-utils/MetricsHelper.js +0 -42
- package/dist/test-utils/MetricsHelper.js.map +0 -1
- package/src/test-utils/MetricsHelper.ts +0 -54
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { MetricsEngine, MetricsFactory } from '@powersync/service-core';
|
|
2
|
-
export declare class MetricsHelper {
|
|
3
|
-
factory: MetricsFactory;
|
|
4
|
-
metricsEngine: MetricsEngine;
|
|
5
|
-
private meterProvider;
|
|
6
|
-
private exporter;
|
|
7
|
-
private metricReader;
|
|
8
|
-
constructor();
|
|
9
|
-
resetMetrics(): void;
|
|
10
|
-
getMetricValueForTests(name: string): Promise<number | undefined>;
|
|
11
|
-
}
|
|
12
|
-
export declare const METRICS_HELPER: MetricsHelper;
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { MetricsEngine, OpenTelemetryMetricsFactory } from '@powersync/service-core';
|
|
2
|
-
import { AggregationTemporality, InMemoryMetricExporter, MeterProvider, PeriodicExportingMetricReader } from '@opentelemetry/sdk-metrics';
|
|
3
|
-
export class MetricsHelper {
|
|
4
|
-
factory;
|
|
5
|
-
metricsEngine;
|
|
6
|
-
meterProvider;
|
|
7
|
-
exporter;
|
|
8
|
-
metricReader;
|
|
9
|
-
constructor() {
|
|
10
|
-
this.exporter = new InMemoryMetricExporter(AggregationTemporality.CUMULATIVE);
|
|
11
|
-
this.metricReader = new PeriodicExportingMetricReader({
|
|
12
|
-
exporter: this.exporter,
|
|
13
|
-
exportIntervalMillis: 100 // Export quickly for tests
|
|
14
|
-
});
|
|
15
|
-
this.meterProvider = new MeterProvider({
|
|
16
|
-
readers: [this.metricReader]
|
|
17
|
-
});
|
|
18
|
-
const meter = this.meterProvider.getMeter('powersync-tests');
|
|
19
|
-
this.factory = new OpenTelemetryMetricsFactory(meter);
|
|
20
|
-
this.metricsEngine = new MetricsEngine({
|
|
21
|
-
factory: this.factory,
|
|
22
|
-
disable_telemetry_sharing: true
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
resetMetrics() {
|
|
26
|
-
this.exporter.reset();
|
|
27
|
-
}
|
|
28
|
-
async getMetricValueForTests(name) {
|
|
29
|
-
await this.metricReader.forceFlush();
|
|
30
|
-
const metrics = this.exporter.getMetrics();
|
|
31
|
-
// Use the latest reported ResourceMetric
|
|
32
|
-
const scoped = metrics[metrics.length - 1]?.scopeMetrics?.[0]?.metrics;
|
|
33
|
-
const metric = scoped?.find((metric) => metric.descriptor.name == name);
|
|
34
|
-
if (metric == null) {
|
|
35
|
-
throw new Error(`Cannot find metric ${name}. Options: ${scoped.map((metric) => metric.descriptor.name).join(',')}`);
|
|
36
|
-
}
|
|
37
|
-
const point = metric.dataPoints[metric.dataPoints.length - 1];
|
|
38
|
-
return point?.value;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
export const METRICS_HELPER = new MetricsHelper();
|
|
42
|
-
//# sourceMappingURL=MetricsHelper.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MetricsHelper.js","sourceRoot":"","sources":["../../src/test-utils/MetricsHelper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACrG,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,aAAa,EACb,6BAA6B,EAC9B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,OAAO,aAAa;IACjB,OAAO,CAAiB;IACxB,aAAa,CAAgB;IAC5B,aAAa,CAAgB;IAC7B,QAAQ,CAAyB;IACjC,YAAY,CAAgC;IAEpD;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAsB,CAAC,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAE9E,IAAI,CAAC,YAAY,GAAG,IAAI,6BAA6B,CAAC;YACpD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,oBAAoB,EAAE,GAAG,CAAC,2BAA2B;SACtD,CAAC,CAAC;QACH,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACrC,OAAO,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC;SAC7B,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;QAC7D,IAAI,CAAC,OAAO,GAAG,IAAI,2BAA2B,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC;YACrC,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,yBAAyB,EAAE,IAAI;SAChC,CAAC,CAAC;IACL,CAAC;IAED,YAAY;QACV,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,IAAY;QACvC,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QAC3C,yCAAyC;QACzC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;QACvE,MAAM,MAAM,GAAG,MAAM,EAAE,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QACxE,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CACb,sBAAsB,IAAI,cAAc,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACnG,CAAC;QACJ,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC9D,OAAO,KAAK,EAAE,KAAe,CAAC;IAChC,CAAC;CACF;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,aAAa,EAAE,CAAC"}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
import { MetricsEngine, MetricsFactory, OpenTelemetryMetricsFactory } from '@powersync/service-core';
|
|
2
|
-
import {
|
|
3
|
-
AggregationTemporality,
|
|
4
|
-
InMemoryMetricExporter,
|
|
5
|
-
MeterProvider,
|
|
6
|
-
PeriodicExportingMetricReader
|
|
7
|
-
} from '@opentelemetry/sdk-metrics';
|
|
8
|
-
|
|
9
|
-
export class MetricsHelper {
|
|
10
|
-
public factory: MetricsFactory;
|
|
11
|
-
public metricsEngine: MetricsEngine;
|
|
12
|
-
private meterProvider: MeterProvider;
|
|
13
|
-
private exporter: InMemoryMetricExporter;
|
|
14
|
-
private metricReader: PeriodicExportingMetricReader;
|
|
15
|
-
|
|
16
|
-
constructor() {
|
|
17
|
-
this.exporter = new InMemoryMetricExporter(AggregationTemporality.CUMULATIVE);
|
|
18
|
-
|
|
19
|
-
this.metricReader = new PeriodicExportingMetricReader({
|
|
20
|
-
exporter: this.exporter,
|
|
21
|
-
exportIntervalMillis: 100 // Export quickly for tests
|
|
22
|
-
});
|
|
23
|
-
this.meterProvider = new MeterProvider({
|
|
24
|
-
readers: [this.metricReader]
|
|
25
|
-
});
|
|
26
|
-
const meter = this.meterProvider.getMeter('powersync-tests');
|
|
27
|
-
this.factory = new OpenTelemetryMetricsFactory(meter);
|
|
28
|
-
this.metricsEngine = new MetricsEngine({
|
|
29
|
-
factory: this.factory,
|
|
30
|
-
disable_telemetry_sharing: true
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
resetMetrics() {
|
|
35
|
-
this.exporter.reset();
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
async getMetricValueForTests(name: string): Promise<number | undefined> {
|
|
39
|
-
await this.metricReader.forceFlush();
|
|
40
|
-
const metrics = this.exporter.getMetrics();
|
|
41
|
-
// Use the latest reported ResourceMetric
|
|
42
|
-
const scoped = metrics[metrics.length - 1]?.scopeMetrics?.[0]?.metrics;
|
|
43
|
-
const metric = scoped?.find((metric) => metric.descriptor.name == name);
|
|
44
|
-
if (metric == null) {
|
|
45
|
-
throw new Error(
|
|
46
|
-
`Cannot find metric ${name}. Options: ${scoped.map((metric) => metric.descriptor.name).join(',')}`
|
|
47
|
-
);
|
|
48
|
-
}
|
|
49
|
-
const point = metric.dataPoints[metric.dataPoints.length - 1];
|
|
50
|
-
return point?.value as number;
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
export const METRICS_HELPER = new MetricsHelper();
|