UNPKG

dependency-cruiser

Version:

Validate and visualize javascript dependencies. With your rules. ES6, CommonJS, AMD

41 lines (37 loc) 1.48 kB
const expect = require('chai').expect; const extractor = require('../../src/extract/extractor'); const cjsFixtures = require('../extractor-fixtures/cjs.json'); const es6Fixtures = require('../extractor-fixtures/es6.json'); const amdFixtures = require('../extractor-fixtures/amd.json'); function runFixture(pFixture) { it(pFixture.title, () => { expect( extractor( pFixture.input.fileName, { baseDir: pFixture.input.baseDir, moduleSystems: pFixture.input.moduleSystems } ) ).to.deep.equal( pFixture.expected ); }); } describe('CommonJS - ', () => cjsFixtures.forEach(runFixture)); describe('ES6 - ', () => es6Fixtures.forEach(runFixture)); describe('AMD - ', () => amdFixtures.forEach(runFixture)); describe('Error scenarios - ', () => { it('Does not raise an exception on syntax errors (because we\'re on the loose parser)', () => { expect( () => extractor("test/extractor-fixtures/syntax-error.js") ).to.not.throw("Extracting dependencies ran afoul of... Unexpected token (1:3)"); }); it('Raises an exception on non-existing files', () => { expect( () => extractor("non-existing-file.js") ).to.throw( "Extracting dependencies ran afoul of... ENOENT: no such file or directory, open 'non-existing-file.js'" ); }); });