import {listenImage} from '../../../../src/ol/Image.js'; describe('HTML Image loading', function () { let handleLoad, handleError, img; beforeEach(function () { handleLoad = sinon.spy(); handleError = sinon.spy(); img = new Image(); }); it('handles load event', function (done) { img.src = 'spec/ol/data/dot.png'; listenImage(img, handleLoad, handleError); setTimeout(function () { expect(handleLoad.called).to.be(true); expect(handleError.called).to.be(false); done(); }, 200); }); it('handles load event when src is set later', function (done) { listenImage(img, handleLoad, handleError); img.src = 'spec/ol/data/dot.png'; setTimeout(function () { expect(handleLoad.called).to.be(true); expect(handleError.called).to.be(false); done(); }, 200); }); it('handles error event', function (done) { img.src = 'invalid.jpeg'; listenImage(img, handleLoad, handleError); setTimeout(function () { expect(handleLoad.called).to.be(false); expect(handleError.called).to.be(true); done(); }, 500); }); it('handles cancelation', function (done) { img.src = 'spec/ol/data/dot.png'; listenImage(img, handleLoad, handleError)(); setTimeout(function () { expect(handleLoad.called).to.be(false); expect(handleError.called).to.be(false); done(); }, 200); }); });