feat(gelios): expand safe B2 telemetry registry
This commit is contained in:
@@ -11,6 +11,9 @@ import {
|
||||
import {
|
||||
geliosTelemetryFieldRegistryV2,
|
||||
} from "../providers/gelios/v9/index.mjs";
|
||||
import {
|
||||
geliosTelemetryFieldRegistryV6,
|
||||
} from "../providers/gelios/v14/index.mjs";
|
||||
|
||||
assert.deepEqual(validateTelemetryFieldRegistry(geliosTelemetryFieldRegistryV1), {
|
||||
ok: true,
|
||||
@@ -65,6 +68,57 @@ assert.notEqual(
|
||||
digestTelemetryFieldRegistry(geliosTelemetryFieldRegistryV1),
|
||||
);
|
||||
|
||||
assert.deepEqual(validateTelemetryFieldRegistry(geliosTelemetryFieldRegistryV6), {
|
||||
ok: true,
|
||||
errors: [],
|
||||
});
|
||||
const operationalProjection = compileTelemetryFieldProjection(
|
||||
geliosTelemetryFieldRegistryV6,
|
||||
{
|
||||
providerPackageId: "gelios.provider.v14",
|
||||
providerPackageVersion: "14.0.0",
|
||||
dataProductId: "fleet.positions.current.v5",
|
||||
surface: "data_product",
|
||||
},
|
||||
);
|
||||
assert.equal(operationalProjection.entries.length, 45);
|
||||
assert.deepEqual(
|
||||
operationalProjection.entries
|
||||
.filter((entry) => ["pwr_ext", "gsm_st", "nav_st"].includes(entry.sourceKey))
|
||||
.map((entry) => ({
|
||||
sourceKey: entry.sourceKey,
|
||||
readingId: entry.reading.id,
|
||||
labelSource: entry.reading.labelSource,
|
||||
unitSource: entry.reading.unitSource,
|
||||
})),
|
||||
[
|
||||
{
|
||||
sourceKey: "gsm_st",
|
||||
readingId: "sensor.param.gsm_st",
|
||||
labelSource: "registry",
|
||||
unitSource: "none",
|
||||
},
|
||||
{
|
||||
sourceKey: "nav_st",
|
||||
readingId: "sensor.param.nav_st",
|
||||
labelSource: "registry",
|
||||
unitSource: "none",
|
||||
},
|
||||
{
|
||||
sourceKey: "pwr_ext",
|
||||
readingId: "sensor.param.pwr_ext",
|
||||
labelSource: "registry",
|
||||
unitSource: "none",
|
||||
},
|
||||
],
|
||||
);
|
||||
for (const forbiddenSourceKey of ["CID", "LAC", "MCC", "MNC", "imei", "commands"]) {
|
||||
assert.equal(
|
||||
operationalProjection.entries.some((entry) => entry.sourceKey === forbiddenSourceKey),
|
||||
false,
|
||||
);
|
||||
}
|
||||
|
||||
const observedExposed = structuredClone(geliosTelemetryFieldRegistryV1);
|
||||
observedExposed.entries.find((entry) => entry.sourceKey === "in_0").allowedSurfaces.push("foundry");
|
||||
assert.equal(
|
||||
|
||||
Reference in New Issue
Block a user