Я новичок в модульном тестировании Jasmine, и я впервые пытаюсь протестировать директиву с контроллером. Структура моей директивы и контроллера немного отличается, чего я не видел ни в одном из блогов или вопросов, связанных со стековым потоком. Я изо всех сил пытаюсь получить доступ к функции _testSampleFunction () для тестирования в моих тестовых примерах. Недостатком здесь является то, что я не могу изменить архитектуру директивы, и я хочу написать контрольные примеры соответственно. Любая помощь будет оценена!
Ниже показано, как определяется мой контроллер:
(function () {
'use strict';
angular.module('myApp',[])
.directive('myDirective', myDirective);
function myDirective()
{
var directive ={
template : '<div></div>',
controller : myController,
controllerAs : 'vm',
scope: {},
};
myController.$inject =['$scope'];
return directive;
function myController($scope)
{
var vm = this;
init();
function init()
{
vm.TestSampleFunction = _testSampleFunction;
}
function _testSampleFunction()
{
return 'my directive';
}
}
}})(window.angular);
Вот плункер (spec.js включен): Демо Плункер
Заранее спасибо!