Skip to content

Commit 0941939

Browse files
committed
[Telemetry] Added unit tests for addition of bounds and domains to telemetry requests
1 parent da40f4c commit 0941939

File tree

2 files changed

+44
-5
lines changed

2 files changed

+44
-5
lines changed

platform/telemetry/src/TelemetryCapability.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,8 @@ define(
140140
typeRequest = (type && type.getDefinition().telemetry) || {},
141141
modelTelemetry = domainObject.getModel().telemetry,
142142
fullRequest = Object.create(typeRequest),
143-
bounds;
143+
bounds,
144+
timeSystem;
144145

145146
// Add properties from the telemetry field of this
146147
// specific domain object.
@@ -167,6 +168,13 @@ define(
167168
fullRequest.end = bounds.end;
168169
}
169170

171+
if (request.domain === undefined) {
172+
timeSystem = this.openmct.conductor.timeSystem();
173+
if (timeSystem !== undefined) {
174+
fullRequest.domain = timeSystem.metadata.key;
175+
}
176+
}
177+
170178
return fullRequest;
171179
};
172180

platform/telemetry/test/TelemetryCapabilitySpec.js

Lines changed: 35 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,13 @@ define(
104104
start: 0,
105105
end: 1
106106
};
107+
},
108+
timeSystem: function () {
109+
return {
110+
metadata: {
111+
key: 'mockTimeSystem'
112+
}
113+
};
107114
}
108115
}
109116
};
@@ -141,7 +148,8 @@ define(
141148
id: "testId", // from domain object
142149
source: "testSource", // from model
143150
key: "testKey", // from model
144-
start: 42 // from argument
151+
start: 42, // from argument
152+
domain: 'mockTimeSystem'
145153
}]);
146154
});
147155

@@ -160,7 +168,8 @@ define(
160168
source: "testSource",
161169
key: "testKey",
162170
start: 0,
163-
end: 1
171+
end: 1,
172+
domain: 'mockTimeSystem'
164173
});
165174
});
166175

@@ -176,7 +185,8 @@ define(
176185
source: "testSource", // from model
177186
key: "testId", // from domain object
178187
start: 0,
179-
end: 1
188+
end: 1,
189+
domain: 'mockTimeSystem'
180190
});
181191
});
182192

@@ -257,7 +267,8 @@ define(
257267
source: "testSource",
258268
key: "testKey",
259269
start: 0,
260-
end: 1
270+
end: 1,
271+
domain: 'mockTimeSystem'
261272
}]
262273
);
263274

@@ -274,8 +285,28 @@ define(
274285
expect(mockUnsubscribe).not.toHaveBeenCalled();
275286
subscription(); // should be an unsubscribe function
276287
expect(mockUnsubscribe).toHaveBeenCalled();
288+
});
289+
290+
it("applies time conductor bounds if request bounds not defined", function () {
291+
var fullRequest = telemetry.buildRequest({});
292+
var mockBounds = mockAPI.conductor.bounds();
293+
294+
expect(fullRequest.start).toBe(mockBounds.start);
295+
expect(fullRequest.end).toBe(mockBounds.end);
296+
297+
fullRequest = telemetry.buildRequest({start: 10, end: 20});
298+
299+
expect(fullRequest.start).toBe(10);
300+
expect(fullRequest.end).toBe(20);
301+
});
277302

303+
it("applies domain from time system if none defined", function () {
304+
var fullRequest = telemetry.buildRequest({});
305+
var mockTimeSystem = mockAPI.conductor.timeSystem();
306+
expect(fullRequest.domain).toBe(mockTimeSystem.metadata.key);
278307

308+
fullRequest = telemetry.buildRequest({domain: 'someOtherDomain'});
309+
expect(fullRequest.domain).toBe('someOtherDomain');
279310
});
280311
});
281312
}

0 commit comments

Comments
 (0)