public void Connects_GetDirectedEdges_EdgesWithoutArrowsAreExcluded_withArrowHeads2() { var page1 = this.GetNewPage(); var shapes = this.draw_standard_shapes(page1); this.connect(shapes[0], shapes[1], true, true); this.connect(shapes[1], shapes[2], true, true); var ch1 = new VisioAutomation.DocumentAnalysis.ConnectorHandling(); ch1.NoArrowsHandling = VisioAutomation.DocumentAnalysis.NoArrowsHandling.ExcludeEdge; var edges1 = VisioAutomation.DocumentAnalysis.ConnectionAnalyzer.GetDirectedEdges(page1, ch1); var map1 = new ConnectivityMap(edges1); Assert.AreEqual(3, map1.CountFromNodes()); Assert.IsTrue(map1.HasConnectionFromTo("A", "B")); Assert.IsTrue(map1.HasConnectionFromTo("B", "A")); Assert.IsTrue(map1.HasConnectionFromTo("B", "C")); Assert.IsTrue(map1.HasConnectionFromTo("C", "B")); Assert.AreEqual(1, map1.CountConnectionsFrom("A")); Assert.AreEqual(2, map1.CountConnectionsFrom("B")); Assert.AreEqual(1, map1.CountConnectionsFrom("C")); var ch2 = new VisioAutomation.DocumentAnalysis.ConnectorHandling(); ch2.NoArrowsHandling = VisioAutomation.DocumentAnalysis.NoArrowsHandling.TreatEdgeAsBidirectional; var edges2 = VisioAutomation.DocumentAnalysis.ConnectionAnalyzer.GetTransitiveClosure(page1, ch2); var map2 = new ConnectivityMap(edges2); Assert.AreEqual(3, map2.CountFromNodes()); Assert.IsTrue(map2.HasConnectionFromTo("A", "B")); Assert.IsTrue(map2.HasConnectionFromTo("B", "A")); Assert.IsTrue(map2.HasConnectionFromTo("B", "C")); Assert.IsTrue(map2.HasConnectionFromTo("C", "B")); Assert.IsTrue(map2.HasConnectionFromTo("A", "C")); Assert.IsTrue(map2.HasConnectionFromTo("C", "A")); Assert.AreEqual(2, map2.CountConnectionsFrom("A")); Assert.AreEqual(2, map2.CountConnectionsFrom("B")); Assert.AreEqual(2, map2.CountConnectionsFrom("C")); page1.Delete(0); }
public void Connects_GetDirectedEdges_EdgesWithoutArrowsAreBidirectional() { var page1 = this.GetNewPage(); var shapes = this.draw_standard_shapes(page1); this.connect(shapes[0], shapes[1], false, false); this.connect(shapes[1], shapes[2], false, false); var options1 = new VA.DocumentAnalysis.ConnectionAnalyzerOptions(); options1.NoArrowsHandling = VA.DocumentAnalysis.NoArrowsHandling.TreatEdgeAsBidirectional; var edges1 = VA.DocumentAnalysis.ConnectionAnalyzer.GetDirectedEdges(page1, options1); var map1 = new ConnectivityMap(edges1); Assert.AreEqual(3, map1.CountFromNodes()); Assert.IsTrue(map1.HasConnectionFromTo("A", "B")); Assert.IsTrue(map1.HasConnectionFromTo("B", "A")); Assert.IsTrue(map1.HasConnectionFromTo("B", "C")); Assert.IsTrue(map1.HasConnectionFromTo("C", "B")); Assert.AreEqual(1, map1.CountConnectionsFrom("A")); Assert.AreEqual(2, map1.CountConnectionsFrom("B")); Assert.AreEqual(1, map1.CountConnectionsFrom("C")); var options2 = new VA.DocumentAnalysis.ConnectionAnalyzerOptions(); options2.NoArrowsHandling = VA.DocumentAnalysis.NoArrowsHandling.TreatEdgeAsBidirectional; var edges2 = VA.DocumentAnalysis.ConnectionAnalyzer.GetDirectedEdgesTransitive(page1, options2); var map2 = new ConnectivityMap(edges2); Assert.AreEqual(3, map2.CountFromNodes()); Assert.IsTrue(map2.HasConnectionFromTo("A", "B")); Assert.IsTrue(map2.HasConnectionFromTo("B", "A")); Assert.IsTrue(map2.HasConnectionFromTo("B", "C")); Assert.IsTrue(map2.HasConnectionFromTo("C", "B")); Assert.IsTrue(map2.HasConnectionFromTo("A", "C")); Assert.IsTrue(map2.HasConnectionFromTo("C", "A")); Assert.AreEqual(2, map2.CountConnectionsFrom("A")); Assert.AreEqual(2, map2.CountConnectionsFrom("B")); Assert.AreEqual(2, map2.CountConnectionsFrom("C")); page1.Delete(0); }
public void PathAnalysis_GetDirectEdgesRaw() { var page1 = this.GetNewPage(); var shapes = this.draw_standard_shapes(page1); this.connect(shapes[0], shapes[1], false, false); this.connect(shapes[1], shapes[2], false, false); var ch = new VisioAutomation.DocumentAnalysis.ConnectorHandling(); ch.DirectionSource = VisioAutomation.DocumentAnalysis.DirectionSource.UseConnectionOrder; var edges = VisioAutomation.DocumentAnalysis.ConnectionAnalyzer.GetDirectedEdges(page1, ch); var map = new ConnectivityMap(edges); Assert.AreEqual(2, map.CountFromNodes()); Assert.IsTrue(map.HasConnectionFromTo("A", "B")); Assert.IsTrue(map.HasConnectionFromTo("B", "C")); Assert.AreEqual(1, map.CountConnectionsFrom("A")); Assert.AreEqual(1, map.CountConnectionsFrom("B")); page1.Delete(0); }