У меня возникли проблемы с настройкой тестов на жасмин для углового приложения. Жасмин не может найти моего контроллера (я подозреваю, что он не может найти мое приложение вообще).Тест на жасмин для углового не может найти мой контроллер
Вот пример, который демонстрирует проблему, я бегу в:
angular.module('testMod', [])
.controller('testController', ['$scope', function($scope) {
$scope.person = {name: 'Jim', age: 14};
function innerFunction() {}
}]);
Тест:
describe('testMod suite', function() {
var $rootScope, myController;
beforeEach(inject(function($injector) {
angular.module('testMod');
$rootScope = $injector.get('$rootScope');
var $controller = $injector.get('$controller');
myController = $controller('testController', {$scope: $rootScope});
}));
it('works', function() {
expect(typeof myController.innerFunction).toBe('function');
});
});
Это не будет работать на линии
myController = $controller('testController', {$scope: $rootScope});
Погрешность I» м наблюдение:
Error: [ng:areq] Argument 'testController' is not a function, got undefined
Я использую автономный SpecRunner.html для Жасмин, с моим приложением и спецификацией нагруженным:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Jasmine Spec Runner v2.0.0</title>
<link rel="shortcut icon" type="image/png" href="lib/jasmine-2.0.0/jasmine_favicon.png">
<link rel="stylesheet" type="text/css" href="lib/jasmine-2.0.0/jasmine.css">
<script type="text/javascript" src="lib/jasmine-2.0.0/jasmine.js"></script>
<script type="text/javascript" src="lib/jasmine-2.0.0/jasmine-html.js"></script>
<script type="text/javascript" src="lib/jasmine-2.0.0/boot.js"></script>
<!-- angular-mock must be loaded AFTER Jasmine -->
<script type="text/javascript" src="../src/angular-1.2.5.min.js"></script>
<script type="text/javascript" src="../src/angular-mock-1.2.5.js"></script>
<!-- include source files here... -->
<script type="text/javascript" src="../src/testMod.js"></script>
<!-- include spec files here... -->
<script type="text/javascript" src="spec/testMod.Test.js"></script>
</head>
<body>
</body>
</html>
Любые предложения приветствуются - Я боролся с этим на некоторое время теперь.