feat(platform): complete the Gelios external data loop
This commit is contained in:
@@ -6,7 +6,12 @@ import { join } from "node:path";
|
||||
import { loadDataProductDefinitions } from "../src/definitions.mjs";
|
||||
|
||||
const bundled = await loadDataProductDefinitions();
|
||||
assert.deepEqual(bundled.map((definition) => definition.id), ["fleet.positions.current.v1"]);
|
||||
assert.deepEqual(bundled.map((definition) => definition.id), [
|
||||
"fleet.positions.current.v1",
|
||||
"fleet.positions.current.v2",
|
||||
"fleet.positions.current.v3",
|
||||
"fleet.positions.current.v4",
|
||||
]);
|
||||
assert.deepEqual(bundled[0].semanticTypes, ["map.moving_object"]);
|
||||
assert.equal(bundled[0].ontologyRevision, "ontology.map.moving_object.v1");
|
||||
assert.equal(bundled[0].history.mode, "sampled");
|
||||
@@ -15,6 +20,32 @@ assert.equal(bundled[0].history.retentionDays, 90);
|
||||
assert.equal(bundled[0].fields.includes("geometry"), true);
|
||||
assert.equal(bundled[0].fields.includes("providerUnitId"), false);
|
||||
assert.equal(bundled[0].fields.includes("provider_unit_id"), false);
|
||||
assert.equal(bundled[1].version, "2.0.0");
|
||||
assert.equal(bundled[1].ontologyRevision, "ontology.map.moving_object.v2");
|
||||
assert.deepEqual(
|
||||
bundled[1].fields.filter((field) => field.endsWith("_state")),
|
||||
["availability_state", "freshness_state", "motion_state", "position_state"],
|
||||
);
|
||||
assert.equal(bundled[2].version, "3.0.0");
|
||||
assert.equal(bundled[2].ontologyRevision, "ontology.map.moving_object.v3");
|
||||
assert.deepEqual(
|
||||
bundled[2].fields.filter((field) => field.endsWith("_state")),
|
||||
["movement_state", "signal_state"],
|
||||
);
|
||||
assert.equal(bundled[2].fields.includes("operational_status"), false);
|
||||
assert.equal(bundled[3].version, "4.0.0");
|
||||
assert.equal(bundled[3].ontologyRevision, "ontology.map.moving_object.v3");
|
||||
assert.deepEqual(bundled[3].fieldContracts.signal_state, {
|
||||
type: "string",
|
||||
required: true,
|
||||
enum: ["active", "inactive"],
|
||||
});
|
||||
assert.deepEqual(bundled[3].fieldContracts.movement_state, {
|
||||
type: "string",
|
||||
required: true,
|
||||
enum: ["moving", "stopped"],
|
||||
});
|
||||
assert.equal(Object.keys(bundled[3].fieldContracts).length, bundled[3].fields.length);
|
||||
|
||||
const directory = await mkdtemp(join(tmpdir(), "nodedc-edp-definitions-"));
|
||||
try {
|
||||
|
||||
Reference in New Issue
Block a user