UNPKG

dpdm

Version:

Analyze circular dependencies in your JavaScript/TypeScript projects.

47 lines 2.1 kB
/*! * Copyright 2019 acrazing <joking.young@gmail.com>. All rights reserved. * @since 2019-07-17 18:45:47 */ import { __awaiter } from "tslib"; import fs from 'fs-extra'; import { dirname, join } from 'path'; import { simpleResolver } from './utils'; describe('util', () => { it('should resolve correctly', () => __awaiter(void 0, void 0, void 0, function* () { const ext = ['', '.js', '.jsx', '.ts', '.tsx', '.json']; const local = yield simpleResolver(__dirname, './bin/dpdm', ext); const index = yield simpleResolver(__dirname, '.', ext); yield fs.outputJSON('node_modules/dpdm-ut-parent/package.json', { name: 'dpdm-ut-parent', version: '1.0.0', main: 'index.js', dependencies: { 'dpdm-ut-deep': '^1.0.0', }, }); yield fs.outputFile('node_modules/dpdm-ut-parent/index.js', ''); yield fs.outputJSON('node_modules/dpdm-ut-parent/node_modules/dpdm-ut-deep/package.json', { name: 'dpdm-ut-deep', version: '1.0.0', main: 'index.js', }); yield fs.outputFile('node_modules/dpdm-ut-parent/node_modules/dpdm-ut-deep/index.js', ''); yield fs.outputJSON('node_modules/dpdm-ut-deep/package.json', { name: 'dpdm-ut-deep', version: '2.0.0', main: 'index.js', }); yield fs.outputFile('node_modules/dpdm-ut-deep/index.js', ''); const pkg = yield simpleResolver(__dirname, 'dpdm-ut-parent', ext); const deepPkg = yield simpleResolver(dirname(pkg), 'dpdm-ut-deep', ext); const notFound = yield simpleResolver(__dirname, './utils.tsx', ext); expect([local, index, pkg, deepPkg, notFound]).toEqual([ join(__dirname, 'bin/dpdm.ts'), join(__dirname, 'index.ts'), join(__dirname, '../node_modules/dpdm-ut-parent/index.js'), join(__dirname, '../node_modules/dpdm-ut-parent/node_modules/dpdm-ut-deep/index.js'), null, ]); })); }); //# sourceMappingURL=utils.spec.js.map