Ich versuche zu testen, dass ein Funktionsrückruf für ein Bild in meiner Komponente aufgerufen wird.Testbild Onload innerhalb reagieren Komponente mit Enzym, Sinon
Dies ist die Komponente:
const ImageById = (props) => {
return (
<div>
<img src={props.url} onLoad={props.onLoad} onError={props.onError} />
</div>
);
};
Und mein Test besteigt die Komponente und dann die Callback-Funktion auszuspionieren:
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);
});
});
Der Test schlägt fehl, da der innere Img
Tag nie seine Berufung ist onload
noch onerror
Methoden. In der Produktion funktioniert der Code gut, es könnte etwas mit der Testumgebung zu tun haben. Es ist wie Img
Tag reagiert nicht auf die wird gesetzt.