[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Тестирование в Ангуляре
sergeiss
Надо мне сделать в Ангуляре юнит-тестирование. Всё понятно, инфы море. И всё было понятно до тех пор, пока не стал писать код.
Запускаю - выдает ошибку TypeError: undefined is not a constructor (evaluating '$controller('LoginCtrl', { $scope:$scope })') in c:/work
SDP/SDP/test/controllers/api.test.js (line 23)


Вот полный код:
'use strict';

describe( 'API', function(){

beforeEach( angular.mock.module('sdpApp') );

var $controller;

console.log('before each');

beforeEach(
angular.mock.inject(function(_$controller_){
console.log('inject'); // это в консоль не выводится!!!
$controller = _$controller_;
})
);


console.log('before it');

it('get user name', function(){
var $scope = {};
console.log( 'controller 1', $controller );
var controller = $controller('LoginCtrl', { $scope:$scope }); // вот строка 23

expect($scope.placeholder.userName).toBe('Email (userId)'); // сюда уже, ясно дело, не доходим.
}) ;

});


И всё сделано сугубо по описаниям из тырнета.
В консоли вижу такой вывод
Цитата
PhantomJS 2.1.1 (Windows 7 0.0.0) LOG: 'before each'
PhantomJS 2.1.1 (Windows 7 0.0.0) LOG: 'before it'
LOG: 'controller 1', undefined


То есть, в инжектор не захожу, вроде как. Почему??? А раз в инжектор не зашел, то тогда понятно, почему ошибка.

Уже весь "обгуглися", прочитал кучу всего, в т.ч. на стек-оверфлоу, ничего не помогает. Обычные тесты запускаются, где не надо подцеплять контроллер. Но как только пытаюсь подцепить контроллер, то получают такую ошибку. Требуется помощь спецов.

PS. Если бы не требования по работе, нахрен бы не занимался этим "автоматическим" тестированием :) Потратил уже полный рабочий день, "однако воз и ныне там".

_____________
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.