[Telemetry] Fill in new specs
Complete test coverage for new scripts added to bundle platform/telemetry in support of autoflow tabular views, WTD-614. Specifically, these implement a telemetrySubscriber service which can be used to watch for updates to telemetry values associated with a specific domain object.
This commit is contained in:
@@ -6,6 +6,48 @@ define(
|
||||
"use strict";
|
||||
|
||||
describe("The telemetry subscriber", function () {
|
||||
// TelemetrySubscriber just provides a factory
|
||||
// for TelemetrySubscription, so most real testing
|
||||
// should happen there.
|
||||
var mockQ,
|
||||
mockTimeout,
|
||||
mockDomainObject,
|
||||
mockCallback,
|
||||
mockPromise,
|
||||
subscriber;
|
||||
|
||||
beforeEach(function () {
|
||||
mockQ = jasmine.createSpyObj("$q", ["when"]);
|
||||
mockTimeout = jasmine.createSpy("$timeout");
|
||||
mockDomainObject = jasmine.createSpyObj(
|
||||
"domainObject",
|
||||
[ "getCapability", "useCapability", "hasCapability" ]
|
||||
);
|
||||
mockCallback = jasmine.createSpy("callback");
|
||||
mockPromise = jasmine.createSpyObj("promise", ["then"]);
|
||||
|
||||
mockQ.when.andReturn(mockPromise);
|
||||
mockPromise.then.andReturn(mockPromise);
|
||||
|
||||
subscriber = new TelemetrySubscriber(mockQ, mockTimeout);
|
||||
});
|
||||
|
||||
it("acts as a factory for subscription objects", function () {
|
||||
var subscription = subscriber.subscribe(
|
||||
mockDomainObject,
|
||||
mockCallback
|
||||
);
|
||||
// Just verify that this looks like a TelemetrySubscription
|
||||
[
|
||||
"unsubscribe",
|
||||
"getTelemetryObjects",
|
||||
"getRangeValue",
|
||||
"getDomainValue"
|
||||
].forEach(function (method) {
|
||||
expect(subscription[method])
|
||||
.toEqual(jasmine.any(Function));
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user