J'utilise Sinon pour rompre les appels d'API lors du test unitaire de mes composants (écrit avec TypeScript et vue-class-component
). Après l'ajout du talon au test unitaire, la méthode d'origine est toujours appelée (ne renvoyant pas la valeur stubbed).Vue.JS Unit Testing - La méthode originale est toujours appelée après l'utilisation de sinon.stub()
it('should set the text to bar', async() => {
const stubbedApiResponse =() => {
return 'bar';
};
sinon.stub(MyComponent.prototype, 'getFoo').callsFake(stubbedApiResponse);
let options = {
template: '<div><my-component></my-component></div>',
components: {'my-component': MyComponent},
store: this.store
};
this.vm = new Vue(options).$mount();
Vue.nextTick(() => {
expect(this.vm.$el.querySelector('.text').textContent).toBe('bar'); // Still equals 'foo'
});
});
La méthode que je tente de stub est appelé mounted
dans le composant et définit le contenu du texte. Toute aide serait appréciée Merci!
Pouvez-vous fournir une prise en pension git min pour le débogage? –