openmct/platform/commonUI/edit/test/EditActionControllerSpec.js
Victor Woeltjen d7fbd596ef [Common UI] Specs for edit controllers
Add specs for controllers used to support Edit mode,
one of the common UI elements being transitioned for
WTD-574.
2014-11-24 17:29:42 -08:00

40 lines
1.3 KiB
JavaScript

/*global define,describe,it,expect,beforeEach,jasmine*/
define(
["../src/EditActionController"],
function (EditActionController) {
"use strict";
describe("The Edit Action controller", function () {
var mockScope,
mockActions,
controller;
beforeEach(function () {
mockActions = jasmine.createSpyObj("action", ["getActions"]);
mockScope = jasmine.createSpyObj("$scope", ["$watch"]);
controller = new EditActionController(mockScope);
});
it("watches scope that may change applicable actions", function () {
// The action capability
expect(mockScope.$watch).toHaveBeenCalledWith(
"action",
jasmine.any(Function)
);
});
it("populates the scope with grouped and ungrouped actions", function () {
mockScope.action = mockActions;
mockActions.getActions.andReturn(["a", "b", "c"]);
// Call the watch
mockScope.$watch.mostRecentCall.args[1]();
// Should have grouped and ungrouped actions in scope now
expect(mockScope.editActions.length).toEqual(3);
});
});
}
);