2016-07-04 7 views
0

Я тестирую угловые службы, используя угловое тестирование с кармой и жасмином. В моих сервисах я использовал sprintf() модуля sprintf-js для получения строки генерации. Теперь, когда я попытался проверить обслуживание, он дает ошибка sprintf не определена.Как протестировать функции библиотеки сторонних разработчиков при тестировании угловых модулей

код что-то вроде этого:

myservice.js

abc(a,b){ 
var url = sprintf(a,b); 
ajax.get(url); 
} 

myservice.spec.js: Я ввел MyService в этом файле и использовать его -

myservice.abc(dummya, dummyb); 

$rootScope.$appy(); 

expect(myservice.abc).toHaveBeenCalled(); 

Any help appreciated . 

ответ

0

Для сторонних библиотек, которые будут функционировать в настоящее время в тестах, добавьте их как зависимость для обслуживания.

angular.module('my-defined-module-name').constant('sprintf',window.sprintf)

angular.service('my-service',['sprintf',function(sprintf){ 

}]) 
+0

Спасибо за ответ. Нет другого пути, иначе я должен внести много изменений в свой код? Поскольку в настоящее время я требую sprintf-js в своем приложении app.js и использую его функциональность глобально. –

+0

@SumitChaudhari Это единственный способ узнать, могут быть и другие возможности. – Exlord

+0

Спасибо, это сработало. :) –

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