J'ai ce fournisseur:Unité tester une aide à l'intérieur d'un fournisseur personnalisé dans AngularJS
angular.module('app').provider('appProvider', function() {
this.$get = Helper;
function Helper() {
function method() {
return true;
};
return {
method: method
};
});
Lorsque les tests unitaires, je peux atteindre appProvider, mais pas le Helper dans les tests unitaires. J'ai essayé ceci:
describe('test', function() {
var prov;
beforeEach(angular.mock.module('app', function(appProvider) {
prov = appProvider;
}));
it('provider', inject(function() {
expect(prov.Helper.method()).toEqual(true);
}));
});
Et obtenir cette erreur:
TypeError: 'undefined' is not an object (evaluating 'prov.Helper.method()')
La question est: Comment la méthode() dois-je atteindre afin d'évaluer est un comportement correct?
Aucune indication sur la façon de le faire lorsque le service (Helper) est déclaré à l'intérieur du fournisseur (appProvider). –
Cela peut être utile: https://docs.angularjs.org/guide/services#unit-testing –