2015-02-25 3 views
0

Мне нужно, чтобы покрыть angularJs конфигурационный файл через мокко Chaiмокко тест Chai случае angularjs Ui маршрута

enter image description here

я попытался

it('should load the page.', inject(function ($location, $rootScope, $state, $httpBackend) { 
    $httpBackend.whenGET('scripts/select-line-module/views/select-line.html').respond('<div/>'); 
    var state = $state.get('selectLine'); 
    $rootScope.$digest(); 
    assert.isDefined(state.templateUrl()); 
    expect(state.templateUrl).toBe('scripts/select-line-module/views/select-line.html'); 
})); 

Я могу покрыть функцию templateUrl, но тестовый пример сбой ошибка: неопределенный не является функцией

enter image description here

Я чувствую, что я рядом, но чего я здесь не хватает?

ответ

0

Ваше согласие и ожидание изменены. Вы должны утверждать, что функция templateUrl определена и ожидает, что функция return станет строкой.

assert.isDefined (state.templateUrl); ожидать (state.templateUrl()). ToBe ('scripts/select-line-module/views/select-line.html');

Однако, можете ли вы проверить, определено ли состояние? Я думаю, что это может быть неопределенным.

0

Я сделал это как

it('should load the page.', inject(function ($state) { 
    var state = $state.get('selectLine'); 
    assert.isDefined(state.templateUrl()); 
    expect(state.templateUrl()).to.equal('scripts/select-line-module/views/select-line.html'); 
})); 

Это работает для меня

Смежные вопросы