Использование нескольких директив в require с Angularjs

У меня есть ситуация, когда мне нужен доступ к нескольким методам контроллера директивы.

Я могу получить доступ к методу из родительской директивы, используя require следующим образом:

    require:"^parentDirective"

но мне также нужно получить доступ к методу в отдельной директиве (не родительской), говорится в документациииспользовать массив строк вот так:

    require:["^parentDirective","directiveTwo"] 

но это приводит к ошибкам, хотя обе директивы были скомпилированы в DOM.

Я что-то здесь упускаю?

вот моя директива:

    angular.module('testModule', ['parentModule'], function () {
    }).directive('testDirective', function() {
        return {
            restrict: 'AE',
            templateUrl: 'testTemplate.tpl.html',
            scope: {
                value1: "=",
                value2: "="
            },  
            require:['^parentDirective','otherDirective'],
            controller: function($scope,$modal,socketConnection) {

                if(case_x == true){
                    $scope.requiredController_1.ctrl1Func();
                }
                else if(case_x == false){
                    $scope.requiredController_2.ctrl2Func();
                }


            },
            link: function(scope,element,attrs,requiredController_1,requiredController_2){

                scope.requiredController_1 = requiredController_1;
                scope.requiredController_2 = requiredController_2;

            }

        };

    });

Ответы на вопрос(2)

Ваш ответ на вопрос