J'essaie de tester qu'une fonction de rappel est appelée pour une image dans mon composant.Test de charge d'image à l'intérieur du composant de réaction en utilisant l'enzyme, sinon
Ceci est le composant:
const ImageById = (props) => {
return (
<div>
<img src={props.url} onLoad={props.onLoad} onError={props.onError} />
</div>
);
};
Et mon test monte sur le composant, puis épier la fonction de rappel:
describe('ImageById',() => {
it('should call load or error',() => {
let callbackSpy = sinon.spy();
let comp = mount(ImageById, {url: 'some-url', onLoad: callbackSpy, onError: callbackSpy});
expect(callbackSpy.called).to.equal(true);
});
});
Le test échoue car la balise Img
intérieure est jamais appeler son onload
ni onerror
méthodes. En production, le code fonctionne correctement, cela peut être lié à l'environnement de test. Sa balise Img
ne réagit pas au url
en cours de définition.