Javascript AngularJS嘲弄
我不知道这里发生了什么。我试图模拟一个服务并将其注入控制器中 我的第一次测试通过,但第二次测试出现以下错误:Javascript AngularJS嘲弄,javascript,angularjs,unit-testing,angularjs-scope,angular-mock,Javascript,Angularjs,Unit Testing,Angularjs Scope,Angular Mock,我不知道这里发生了什么。我试图模拟一个服务并将其注入控制器中 我的第一次测试通过,但第二次测试出现以下错误: Error: [ng:areq] http://errors.angularjs.org/1.2.28/ng/areq?p0=authenticationController&p1=not%20a%20function%2C%20got%20undefined at Db (/Users/PrimeByDesign/Documents/Development/AD
Error: [ng:areq] http://errors.angularjs.org/1.2.28/ng/areq?p0=authenticationController&p1=not%20a%20function%2C%20got%20undefined
at Db (/Users/PrimeByDesign/Documents/Development/ADashOfPanache/framework/src/libs/bower/angular/angular.min.js:19)
at Ya (/Users/PrimeByDesign/Documents/Development/ADashOfPanache/framework/src/libs/bower/angular/angular.min.js:19)
at /Users/PrimeByDesign/Documents/Development/ADashOfPanache/framework/src/libs/bower/angular/angular.min.js:67
at /Users/PrimeByDesign/Documents/Development/ADashOfPanache/framework/src/js/functionality/authentication/authenticationSpec.js:51
at d (/Users/PrimeByDesign/Documents/Development/ADashOfPanache/framework/src/libs/bower/angular/angular.min.js:35)
at workFn (/Users/PrimeByDesign/Documents/Development/ADashOfPanache/framework/src/libs/bower/angular-mocks/angular-mocks.js:2177)
Expected h({ $$childTail: null, $$childHead: null, $$nextSibling: null, $$watchers: null, $$listeners: Object({ }), $$listenerCount: Object({ }), $id: '004', $$childScopeClass: null, this: <circular reference: Object>, $parent: h({ $id: '003', $$childTail: <circular reference: Object>, $$childHead: <circular reference: Object>, $$prevSibling: null, $$nextSibling: null, $$watchers: null, $parent: null, $$phase: null, $root: <circular reference: Object>, this: <circular reference: Object>, $$destroyed: false, $$asyncQueue: [ ], $$postDigestQueue: [ ], $$listeners: Object({ }), $$listenerCount: Object({ }), $$isolateBindings: Object({ }), $$childScopeClass: Function }), $$prevSibling: null }) to be null.
at /Users/PrimeByDesign/Documents/Development/ADashOfPanache/framework/src/js/functionality/authentication/authenticationSpec.js:79
我还得到了测试文件声明:
var testFiles = [
'framework/src/libs/bower/angular/angular.min.js',
'framework/src/libs/bower/angular-route/angular-route.min.js',
'framework/src/libs/bower/angular-mocks/angular-mocks.js',
'framework/src/js/app.js',
'framework/src/js/functionality/authentication/*Service.js',
'framework/src/js/functionality/authentication/*Controller.js',
'framework/src/js/functionality/authentication/*Spec.js'
];
就我所见,上面的测试文件数组看起来是正确的
我对Angular是个新手,我一直在努力解决这个问题,所以我很感激你能给我的任何建议 你不能两次引导你的
应用程序
模块,当然也不能在$inject
功能中引导。在您第一次调用模块('app')
时,使用$provide
向上移动您的配置函数,这解决了我的问题!谢谢您!请将此作为答案提交,我将投票表决。你为我节省了很多时间。
var testFiles = [
'framework/src/libs/bower/angular/angular.min.js',
'framework/src/libs/bower/angular-route/angular-route.min.js',
'framework/src/libs/bower/angular-mocks/angular-mocks.js',
'framework/src/js/app.js',
'framework/src/js/functionality/authentication/*Service.js',
'framework/src/js/functionality/authentication/*Controller.js',
'framework/src/js/functionality/authentication/*Spec.js'
];