UNPKG

ami.js

Version:

<p align="center"> <img src="https://cloud.githubusercontent.com/assets/214063/23213764/78ade038-f90c-11e6-8208-4fcade5f3832.png" width="60%"> </p>

67 lines (60 loc) 2.37 kB
/* globals describe, fdescribe, it, fit, expect, beforeEach*/ import VolumeLoader from '../../src/loaders/loaders.volume'; describe('Volume Loader', function() { let loader; const eventsHandleSpy = {}; const sourceUrl = '/base/data/dicom/adi_slice.dcm'; const baseSinonMatch = new sinon.match({file: sourceUrl}).and(new sinon.match.hasOwn('time')); beforeEach(() => { loader = new VolumeLoader(); // setup event handle spy ['load-start', 'fetch-start', 'fetch-success', 'fetch-error', 'fetch-abort', 'fetch-timeout', 'fetch-progress', 'fetch-end', 'parse-start', 'parsing', 'parse-success', 'parse-error'].map((evtName) => { eventsHandleSpy[evtName] = new sinon.spy(); loader.on(evtName, eventsHandleSpy[evtName]); }); }); afterEach(() => { loader = null; }); describe('parse data', () => { it('give a single url', (done) => { loader.load(sourceUrl) .then((data) => { expect(Array.isArray(data)).toBe(true); expect(data.length).toBe(1); // just test events of parse, the other events test at loader.base.spec.js sinon.assert.calledWith(eventsHandleSpy['parse-start'], baseSinonMatch); sinon.assert.calledWith(eventsHandleSpy['parsing'], baseSinonMatch .and(new sinon.match.hasOwn('total')) .and(new sinon.match.hasOwn('parsed'))); sinon.assert.calledWith(eventsHandleSpy['parse-success'], baseSinonMatch .and(new sinon.match.hasOwn('total')) .and(new sinon.match.hasOwn('parsed'))); done(); }); }); it('give urls with array', (done) => { const urls = [ '/base/data/dicom/adi_slice.dcm', '/base/data/nifti/adi_slice.nii', ]; loader.load(urls) .then((data) => { expect(Array.isArray(data)).toBe(true); expect(data.length).toBe(2); done(); }); }); }); });