From 4aaf962b70fca9f05c5aed70987a6fe3ad8e7f38 Mon Sep 17 00:00:00 2001 From: Magnus Jacobsson Date: Sat, 10 Feb 2024 16:55:27 +0100 Subject: [PATCH] add test/simple-nodes-names-equal-to-javascript-object-properties.js --- ...s-equal-to-javascript-object-properties.js | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 test/simple-nodes-names-equal-to-javascript-object-properties.js diff --git a/test/simple-nodes-names-equal-to-javascript-object-properties.js b/test/simple-nodes-names-equal-to-javascript-object-properties.js new file mode 100644 index 00000000..1e8d3940 --- /dev/null +++ b/test/simple-nodes-names-equal-to-javascript-object-properties.js @@ -0,0 +1,28 @@ +import assert from "assert"; +import it from "./it.js"; +import jsdom from "./jsdom.js"; +import * as d3 from "d3-selection"; +import * as d3_graphviz from "../index.js"; + +it("Simple rendering an SVG from graphviz DOT.", async () => { + var window = global.window = jsdom('
'); + global.document = window.document; + + var graphviz; + + await new Promise(resolve => { + graphviz = d3_graphviz.graphviz("#graph") + .growEnteringEdges(true) + .onerror(e => { + console.log("graphviz.renderDot error:", e); + resolve(false); + }) + .renderDot('digraph {constructor -> toString}', resolve); + }); + + assert.equal(d3.selectAll('.node').size(), 2, 'Number of nodes'); + assert.equal(d3.selectAll('.edge').size(), 1, 'Number of edges'); + assert.equal(d3.selectAll('ellipse').size(), 2, 'Number of ellipses'); + assert.equal(d3.selectAll('polygon').size(), 2, 'Number of polygons'); + assert.equal(d3.selectAll('path').size(), 1, 'Number of paths'); +});