UNPKG

archunit

Version:

ArchUnit TypeScript is an architecture testing library, to specify and assert architecture rules in your TypeScript app

32 lines 1.47 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const slicing_projections_1 = require("./slicing-projections"); describe('slicingProjections', () => { it('slices sub directories', () => { const edge = { source: 'src/service/blub/Service.ts', target: 'src/facade/bla/Facade.ts', external: false, importKinds: [], }; expect((0, slicing_projections_1.sliceByPattern)('src/(**)/')(edge)?.sourceLabel).toEqual('service'); expect((0, slicing_projections_1.sliceByPattern)('src/(**)/')(edge)?.targetLabel).toEqual('facade'); }); it('slices on top level', () => { const edge = { source: 'src/service/Service.ts', target: 'src/facade/Facade.ts', external: false, importKinds: [], }; expect((0, slicing_projections_1.sliceByPattern)('src/(**)')(edge)?.sourceLabel).toEqual('service'); expect((0, slicing_projections_1.sliceByPattern)('src/(**)')(edge)?.targetLabel).toEqual('facade'); }); it("detects missing '(**)' in slice pattern", () => { expect(() => (0, slicing_projections_1.sliceByPattern)('src/(*')).toThrowError(); }); it("slices too many occurances of '(**)' in slice pattern", () => { expect(() => (0, slicing_projections_1.sliceByPattern)('src/(**)/(**)')).toThrowError(); }); }); //# sourceMappingURL=slicing-projections.spec.js.map