如何在 angular 单元测试中测试第三方库函数
How to test Third party library functions in angular unit testing
我正在使用 angular 单元测试和 karma 和 jasmine 测试 angular 服务。
在我的服务中,我使用了 sprintf-js 模块的 sprintf() 来获取生成的字符串。现在,当我尝试测试服务时,它给出了 error sprintf not defined 。
代码是这样的:
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 .
为了使第三方库在当前测试中正常运行,请将它们添加为服务的依赖项。
angular.module('my-defined-module-name').constant('sprintf',window.sprintf)
angular.service('my-service',['sprintf',function(sprintf){
}])
我正在使用 angular 单元测试和 karma 和 jasmine 测试 angular 服务。 在我的服务中,我使用了 sprintf-js 模块的 sprintf() 来获取生成的字符串。现在,当我尝试测试服务时,它给出了 error sprintf not defined 。
代码是这样的:
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 .
为了使第三方库在当前测试中正常运行,请将它们添加为服务的依赖项。
angular.module('my-defined-module-name').constant('sprintf',window.sprintf)
angular.service('my-service',['sprintf',function(sprintf){
}])