获取角度控制器注入列表

时间:2014-01-21 11:19:27

标签: angularjs unit-testing jasmine karma-runner

我用Karma编写角度控制器的单元测试。它看起来像:

describe('TestController', function() {

    var $scope, $rootScope, service1, sevice2, service3, $controller;

    beforeEach(module('TestModule'));

    beforeEach(function() {  
        inject(function($injector) {
            service1= $injector.get('service1');
            service2= $injector.get('service2');
            service3= $injector.get('service3');
            $scope = $injector.get('$rootScope').$new();

            $controller = $injector.get('$controller')('TestController', {
                $scope: $scope
            });            
        });
    });

    /* it blocks */
});

你可以看到所有的控制器注射我一步一步地从$ injector注入。

所以问题是,我可以简单地获取所有TestController注入的列表吗?

此测试的控制器功能样本:

function($scope, $rootScope, service1, sevice2, service3)

我需要得到:

['$scope', '$rootScope', 'service1', 'sevice2', 'service3'] or similar

1 个答案:

答案 0 :(得分:1)

注入器对象的annotate方法将为您提供依赖项列表。

相关问题