public Diagram addNode(String activityId, double ulx, double uly, double lrx, double lry) { ensureCanvas(); canvas.addNode(new Node() .elementId(activityId) .bounds(new Bounds(ulx, uly, lrx, lry))); return this; }
public Diagram addNode(String activityId, double ulx, double uly, double lrx, double lry) { ensureCanvas(); canvas.addNode(new Node() .elementId(activityId) .bounds(new Bounds(ulx, uly, lrx, lry))); return this; }
double width = Double.valueOf(currentXml.removeAttribute(OMG_DC_URI, "width")); double height = Double.valueOf(currentXml.removeAttribute(OMG_DC_URI, "height")); node.bounds(new Bounds(new Point(x, y), width, height));
@Test public void testEquals() { List<Node> children = new ArrayList<>(); children.add(new Node().id("n1")); children.add(new Node().id("n2")); String actId = "a1"; Bounds bounds = new Bounds(Point.of(1, 2), Point.of(3, 4)); Node node1 = new Node() .elementId(actId) .bounds(bounds) .children(children); Node node2 = new Node() .elementId(actId) .bounds(bounds) .children(children); assertEquals(node1, node2); assertEquals(node1.hashCode(), node2.hashCode()); }
@Test public void testEnsureCanvas() { Diagram diagram = new Diagram(); assertNotNull(diagram.canvas); assertNotNull(diagram.version); assertEquals(1l, diagram.version.longValue()); diagram = new Diagram(); diagram.version(2l); assertNotNull(diagram.canvas); assertEquals(2l, diagram.version.longValue()); Node canvas = new Node().bounds(Bounds.of(1.0, 2.0, 3.0, 4.0)); diagram = new Diagram() .canvas(canvas) .version(2l); // should stay untouched assertEquals(canvas, diagram.canvas); assertEquals(2l, diagram.version.longValue()); }
@Test public void testSetCanvas() { Diagram diagram = Diagram.newInstance(); assertNotNull(diagram.canvas); Node canvas = new Node().bounds(Bounds.of(1.0, 2.0, 3.0, 4.0)); assertNotEquals(canvas, diagram.canvas); diagram.canvas(canvas); assertEquals(canvas, diagram.canvas); diagram.canvas(null); assertNull(diagram.canvas); }
@Test public void testEmptyDiagram() throws Exception { ExecutableWorkflow workflow = new ExecutableWorkflow().id(new WorkflowId(getWorkflowIdInternal())); workflow.setDiagram(new Diagram().canvas(new Node().addNode(new Node().bounds(new Bounds(0, 0, 10, 10))))); workflow = serializeWorkflow(workflow); // No execptions due to empty workflow and diagram. } }
@Test public void testEquals() { Diagram diagram1 = Diagram.newInstance(); Diagram diagram2 = Diagram.newInstance(); assertEquals(diagram1, diagram2); diagram2.canvas(new Node().bounds(Bounds.of(1.0, 2.0, 3.0, 4.0))); assertNotEquals(diagram1, diagram2); diagram1.canvas.bounds(Bounds.of(1.0, 2.0, 3.0, 4.0)); assertEquals(diagram1, diagram2); assertEquals(diagram1.hashCode(), diagram2.hashCode()); diagram2.incVersion(); assertNotEquals(diagram1, diagram2); diagram1.incVersion(); assertEquals(diagram1, diagram2); String edgeId = "e1"; diagram1.addEdge(new Edge().transitionId(edgeId)); assertNotEquals(diagram1, diagram2); diagram2.addEdge(new Edge().transitionId(edgeId)); assertEquals(diagram1, diagram2); }