UNPKG

rete-kit

Version:

Rete.js Kit ==== [![Made in Ukraine](https://img.shields.io/badge/made_in-ukraine-ffd700.svg?labelColor=0057b7)](https://stand-with-ukraine.pp.ua) [![Discord](https://img.shields.io/discord/1081223198055604244?color=%237289da&label=Discord)](https://disco

101 lines (100 loc) 2.97 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const globals_1 = require("@jest/globals"); const dependency_topo_1 = require("./dependency-topo"); (0, globals_1.describe)('Dependency topology', () => { (0, globals_1.it)('basic', () => { const a = { name: 'a' }; const b = { name: 'b', dependencies: { a: '', c: '' } }; const c = { name: 'c', dependencies: { a: '' } }; const packages = [ { folder: './pkgs/a', config: a }, { folder: './pkgs/b', config: b }, { folder: './c', config: c } ]; const dirs = (0, dependency_topo_1.getDependencyTopo)(packages); (0, globals_1.expect)(dirs).toEqual([ { dependencies: [], dependent: ['b', 'c'], folder: './pkgs/a', config: a }, { dependencies: ['a'], dependent: ['b'], folder: './c', config: c }, { dependencies: ['a', 'c'], dependent: [], folder: './pkgs/b', config: b } ]); }); (0, globals_1.it)('no dependent', () => { const packages = [ { folder: './pkgs/a', config: { name: 'a' } }, { folder: './pkgs/b', config: { name: 'b' } } ]; const dirs = (0, dependency_topo_1.getDependencyTopo)(packages); (0, globals_1.expect)(dirs).toEqual([]); }); (0, globals_1.it)('includes devDependencies in topology', () => { const a = { name: 'a' }; const b = { name: 'b', devDependencies: { a: '' } }; const c = { name: 'c', dependencies: { a: '' }, devDependencies: { b: '' } }; const packages = [ { folder: './pkgs/a', config: a }, { folder: './pkgs/b', config: b }, { folder: './pkgs/c', config: c } ]; const dirs = (0, dependency_topo_1.getDependencyTopo)(packages); (0, globals_1.expect)(dirs).toEqual([ { dependencies: [], dependent: ['b', 'c'], folder: './pkgs/a', config: a }, { dependencies: ['a'], dependent: ['c'], folder: './pkgs/b', config: b }, { dependencies: ['a', 'b'], dependent: [], folder: './pkgs/c', config: c } ]); }); });