mirror of
https://github.com/nasa/openmct.git
synced 2024-12-21 06:03:08 +00:00
fa5bc326e1
Update failing specs after changes for composition policy to enforce containment rules, WTD-962.
60 lines
1.8 KiB
JavaScript
60 lines
1.8 KiB
JavaScript
/*global define,describe,it,expect,beforeEach,waitsFor,jasmine*/
|
|
|
|
define(
|
|
["../src/MCTControl"],
|
|
function (MCTControl) {
|
|
"use strict";
|
|
|
|
describe("The mct-control directive", function () {
|
|
var testControls,
|
|
mockScope,
|
|
mctControl;
|
|
|
|
beforeEach(function () {
|
|
testControls = [
|
|
{
|
|
key: "abc",
|
|
bundle: { path: "a", resources: "b" },
|
|
templateUrl: "c/template.html"
|
|
},
|
|
{
|
|
key: "xyz",
|
|
bundle: { path: "x", resources: "y" },
|
|
templateUrl: "z/template.html"
|
|
}
|
|
];
|
|
|
|
mockScope = jasmine.createSpyObj("$scope", [ "$watch" ]);
|
|
|
|
mctControl = new MCTControl(testControls);
|
|
});
|
|
|
|
it("is restricted to the element level", function () {
|
|
expect(mctControl.restrict).toEqual("E");
|
|
});
|
|
|
|
it("watches its passed key to choose a template", function () {
|
|
mctControl.link(mockScope);
|
|
|
|
expect(mockScope.$watch).toHaveBeenCalledWith(
|
|
"key",
|
|
jasmine.any(Function)
|
|
);
|
|
});
|
|
|
|
it("changes its template dynamically", function () {
|
|
mctControl.link(mockScope);
|
|
|
|
mockScope.key = "xyz";
|
|
mockScope.$watch.mostRecentCall.args[1]("xyz");
|
|
|
|
// Should have communicated the template path to
|
|
// ng-include via the "inclusion" field in scope
|
|
expect(mockScope.inclusion).toEqual(
|
|
"x/y/z/template.html"
|
|
);
|
|
});
|
|
|
|
});
|
|
}
|
|
); |