【发布时间】:2023-03-16 01:30:02
【问题描述】:
我想在 Angular 工厂中测试一个函数。
app.factory('customerSearchService', function ($http, $q) {
var customerSearchByName = function (searchTokens) {
//Some stuff
};
function createSearchStringFromArray(searchArray) {
//Do some stuff
return 'Processed string';
}
return {
customerSearchByName: customerSearchByName
};
});
我尝试访问内部函数,导致函数出现未定义消息:
describe("Services: customerSearchService", function () {
beforeEach(module('AddressService'));
var customerSearchService;
beforeEach(inject(function($injector) {
customerSearchService = $injector.get('customerSearchService');
}));
it("createSearchStringFromArray is a function", function () {
expect(customerSearchService.createSearchStringFromArray).toBeFunction();
});
});
我可以将 createSearchStringFromArray 添加到工厂函数中,但我希望它保持私有。
如何使用 jasmine 访问内部函数?
【问题讨论】:
-
这篇文章可能会有所帮助:philipwalton.com/articles/…