UNPKG

dependency-cruiser

Version:

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

66 lines (60 loc) 4.31 kB
"use strict"; const expect = require('chai').expect; const render = require('../../src/report/dotReporter'); const deps = require('../fixtures/cjs-no-dependency-valid.json'); const elFixture = `digraph "dependency-cruiser output"{ ordering=out rankdir=LR splines=true overlap=false nodesep=0.16 fontname="Helvetica-bold" fontsize="9" style="rounded,bold" compound=true node [shape=box style="rounded, filled" fillcolor="#ffffcc" height=0.2 fontname=Helvetica fontsize=9] edge [color=black arrowhead=normal fontname="Helvetica" fontsize="9"] "fs" [color="grey" fontcolor="grey"] "http" [color="grey" fontcolor="grey"] subgraph "cluster_/node_modules" {label="node_modules" subgraph "cluster_/node_modules/somemodule" {label="somemodule" subgraph "cluster_/node_modules/somemodule/node_modules" {label="node_modules" subgraph "cluster_/node_modules/somemodule/node_modules/someothermodule" {label="someothermodule" "node_modules/somemodule/node_modules/someothermodule/main.js" [label="main.js" URL="node_modules/somemodule/node_modules/someothermodule/main.js"] } } } } subgraph "cluster_/node_modules" {label="node_modules" subgraph "cluster_/node_modules/somemodule" {label="somemodule" subgraph "cluster_/node_modules/somemodule/src" {label="src" "node_modules/somemodule/src/moar-javascript.js" [label="moar-javascript.js" URL="node_modules/somemodule/src/moar-javascript.js"] } } } subgraph "cluster_/node_modules" {label="node_modules" subgraph "cluster_/node_modules/somemodule" {label="somemodule" subgraph "cluster_/node_modules/somemodule/src" {label="src" "node_modules/somemodule/src/somemodule.js" [label="somemodule.js" URL="node_modules/somemodule/src/somemodule.js"] } } } "one_only_one.js" [URL="one_only_one.js"] "one_only_two.js" [URL="one_only_two.js"] "path" [color="grey" fontcolor="grey"] "root_one.js" [URL="root_one.js"] "root_two.js" [URL="root_two.js"] "shared.js" [color="red" fontcolor="red"] "somedata.json" [URL="somedata.json"] subgraph "cluster_/sub" {label="sub" "sub/depindir.js" [label="depindir.js" URL="sub/depindir.js"] } subgraph "cluster_/sub" {label="sub" "sub/dir.js" [label="dir.js" URL="sub/dir.js"] } "two_only_one.js" [URL="two_only_one.js"] "node_modules/somemodule/src/somemodule.js" -> "node_modules/somemodule/src/moar-javascript.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "node_modules/somemodule/src/somemodule.js" -> "node_modules/somemodule/node_modules/someothermodule/main.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "one_only_one.js" -> "path" [color="orange" penwidth=2.0 tooltip="unnamed"] "one_only_two.js" -> "path" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_one.js" -> "one_only_one.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_one.js" -> "one_only_two.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_one.js" -> "shared.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_one.js" -> "sub/dir.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_one.js" -> "fs" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_one.js" -> "node_modules/somemodule/src/somemodule.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_two.js" -> "shared.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_two.js" -> "somedata.json" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_two.js" -> "two_only_one.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "root_two.js" -> "http" [color="orange" penwidth=2.0 tooltip="unnamed"] "shared.js" -> "path" [color="orange" penwidth=2.0 tooltip="unnamed"] "sub/depindir.js" -> "path" [color="orange" penwidth=2.0 tooltip="unnamed"] "sub/dir.js" -> "sub/depindir.js" [color="orange" penwidth=2.0 tooltip="unnamed"] "sub/dir.js" -> "path" [color="orange" penwidth=2.0 tooltip="unnamed"] "two_only_one.js" -> "sub/dir.js" [color="orange" penwidth=2.0 tooltip="unnamed"] } `; describe("dot reporter", () => { it("renders a dot - modules in the root don't come in a cluster", () => { expect(render(deps).content).to.deep.equal(elFixture); // console.log(render(deps)); // expect(1).to.equal(1); }); }); /* eslint max-len: 0 */