diff --git a/libraries/pom.xml b/libraries/pom.xml index bf90e4ccd9..0b707b914e 100644 --- a/libraries/pom.xml +++ b/libraries/pom.xml @@ -587,21 +587,12 @@ hazelcast ${hazelcast.version} - - org.jgrapht - jgrapht-core - 1.0.1 - com.netopyr.wurmloch wurmloch-crdt ${crdt.version} - org.jgrapht - jgrapht-core - 1.0.1 - org.docx4j docx4j 3.3.5 @@ -715,4 +706,4 @@ 3.8.4 2.5.5 - + \ No newline at end of file diff --git a/libraries/src/test/java/com/baeldung/jgrapht/CompleteGraphTest.java b/libraries/src/test/java/com/baeldung/jgrapht/CompleteGraphTest.java deleted file mode 100644 index c085d54689..0000000000 --- a/libraries/src/test/java/com/baeldung/jgrapht/CompleteGraphTest.java +++ /dev/null @@ -1,38 +0,0 @@ -package com.baeldung.jgrapht; - -import static org.junit.Assert.assertEquals; - -import java.util.List; - -import org.jgrapht.VertexFactory; -import org.jgrapht.alg.HamiltonianCycle; -import org.jgrapht.generate.CompleteGraphGenerator; -import org.jgrapht.graph.DefaultEdge; -import org.jgrapht.graph.SimpleWeightedGraph; -import org.junit.Before; -import org.junit.Test; - -public class CompleteGraphTest { - - static SimpleWeightedGraph completeGraph; - static int size = 10; - - @Before - public void createCompleteGraph() { - completeGraph = new SimpleWeightedGraph<>(DefaultEdge.class); - CompleteGraphGenerator completeGenerator = new CompleteGraphGenerator(size); - VertexFactory vFactory = new VertexFactory() { - private int id = 0; - public String createVertex() { - return "v" + id++; - } - }; - completeGenerator.generateGraph(completeGraph, vFactory, null); - } - - @Test - public void givenCompleteGraph_whenGetHamiltonianCyclePath_thenGetVerticeListInSequence() { - List verticeList = HamiltonianCycle.getApproximateOptimalForCompleteGraph(completeGraph); - assertEquals(verticeList.size(), completeGraph.vertexSet().size()); - } -} diff --git a/libraries/src/test/java/com/baeldung/jgrapht/DirectedGraphTests.java b/libraries/src/test/java/com/baeldung/jgrapht/DirectedGraphTests.java deleted file mode 100644 index 7f4cc99715..0000000000 --- a/libraries/src/test/java/com/baeldung/jgrapht/DirectedGraphTests.java +++ /dev/null @@ -1,95 +0,0 @@ -package com.baeldung.jgrapht; - -import static org.junit.Assert.assertNotNull; -import static org.junit.Assert.assertTrue; - -import java.util.ArrayList; -import java.util.List; -import java.util.Set; -import java.util.stream.IntStream; - -import org.jgrapht.DirectedGraph; -import org.jgrapht.GraphPath; -import org.jgrapht.alg.CycleDetector; -import org.jgrapht.alg.KosarajuStrongConnectivityInspector; -import org.jgrapht.alg.interfaces.StrongConnectivityAlgorithm; -import org.jgrapht.alg.shortestpath.AllDirectedPaths; -import org.jgrapht.alg.shortestpath.BellmanFordShortestPath; -import org.jgrapht.alg.shortestpath.DijkstraShortestPath; -import org.jgrapht.graph.DefaultDirectedGraph; -import org.jgrapht.graph.DefaultEdge; -import org.jgrapht.graph.DirectedSubgraph; -import org.jgrapht.traverse.BreadthFirstIterator; -import org.jgrapht.traverse.DepthFirstIterator; -import org.junit.Before; -import org.junit.Test; - -public class DirectedGraphTests { - DirectedGraph directedGraph; - - @Before - public void createDirectedGraph() { - directedGraph = new DefaultDirectedGraph(DefaultEdge.class); - IntStream.range(1, 10).forEach(i -> { - directedGraph.addVertex("v" + i); - }); - directedGraph.addEdge("v1", "v2"); - directedGraph.addEdge("v2", "v4"); - directedGraph.addEdge("v4", "v3"); - directedGraph.addEdge("v3", "v1"); - directedGraph.addEdge("v5", "v4"); - directedGraph.addEdge("v5", "v6"); - directedGraph.addEdge("v6", "v7"); - directedGraph.addEdge("v7", "v5"); - directedGraph.addEdge("v8", "v5"); - directedGraph.addEdge("v9", "v8"); - } - - @Test - public void givenDirectedGraph_whenGetStronglyConnectedSubgraphs_thenPathExistsBetweenStronglyconnectedVertices() { - StrongConnectivityAlgorithm scAlg = new KosarajuStrongConnectivityInspector<>(directedGraph); - List> stronglyConnectedSubgraphs = scAlg.stronglyConnectedSubgraphs(); - List stronglyConnectedVertices = new ArrayList<>(stronglyConnectedSubgraphs.get(3).vertexSet()); - - String randomVertex1 = stronglyConnectedVertices.get(0); - String randomVertex2 = stronglyConnectedVertices.get(3); - AllDirectedPaths allDirectedPaths = new AllDirectedPaths<>(directedGraph); - - List> possiblePathList = allDirectedPaths.getAllPaths(randomVertex1, randomVertex2, false, stronglyConnectedVertices.size()); - assertTrue(possiblePathList.size() > 0); - } - - @Test - public void givenDirectedGraphWithCycle_whenCheckCycles_thenDetectCycles() { - CycleDetector cycleDetector = new CycleDetector(directedGraph); - assertTrue(cycleDetector.detectCycles()); - Set cycleVertices = cycleDetector.findCycles(); - assertTrue(cycleVertices.size() > 0); - } - - @Test - public void givenDirectedGraph_whenCreateInstanceDepthFirstIterator_thenGetIterator() { - DepthFirstIterator depthFirstIterator = new DepthFirstIterator<>(directedGraph); - assertNotNull(depthFirstIterator); - } - - @Test - public void givenDirectedGraph_whenCreateInstanceBreadthFirstIterator_thenGetIterator() { - BreadthFirstIterator breadthFirstIterator = new BreadthFirstIterator<>(directedGraph); - assertNotNull(breadthFirstIterator); - } - - @Test - public void givenDirectedGraph_whenGetDijkstraShortestPath_thenGetNotNullPath() { - DijkstraShortestPath dijkstraShortestPath = new DijkstraShortestPath(directedGraph); - List shortestPath = dijkstraShortestPath.getPath("v1", "v4").getVertexList(); - assertNotNull(shortestPath); - } - - @Test - public void givenDirectedGraph_whenGetBellmanFordShortestPath_thenGetNotNullPath() { - BellmanFordShortestPath bellmanFordShortestPath = new BellmanFordShortestPath(directedGraph); - List shortestPath = bellmanFordShortestPath.getPath("v1", "v4").getVertexList(); - assertNotNull(shortestPath); - } -} diff --git a/libraries/src/test/java/com/baeldung/jgrapht/EulerianCircuitTest.java b/libraries/src/test/java/com/baeldung/jgrapht/EulerianCircuitTest.java deleted file mode 100644 index 6f0fb92ab7..0000000000 --- a/libraries/src/test/java/com/baeldung/jgrapht/EulerianCircuitTest.java +++ /dev/null @@ -1,42 +0,0 @@ -package com.baeldung.jgrapht; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; - -import java.util.stream.IntStream; - -import org.jgrapht.GraphPath; -import org.jgrapht.alg.cycle.HierholzerEulerianCycle; -import org.jgrapht.graph.DefaultEdge; -import org.jgrapht.graph.SimpleWeightedGraph; -import org.junit.Before; -import org.junit.Test; - -public class EulerianCircuitTest { - SimpleWeightedGraph simpleGraph; - - @Before - public void createGraphWithEulerianCircuit() { - simpleGraph = new SimpleWeightedGraph<>(DefaultEdge.class); - IntStream.range(1, 6).forEach(i -> { - simpleGraph.addVertex("v" + i); - }); - IntStream.range(1, 6).forEach(i -> { - int endVertexNo = (i + 1) > 5 ? 1 : i + 1; - simpleGraph.addEdge("v" + i, "v" + endVertexNo); - }); - } - - @Test - public void givenGraph_whenCheckEluerianCycle_thenGetResult() { - HierholzerEulerianCycle eulerianCycle = new HierholzerEulerianCycle<>(); - assertTrue(eulerianCycle.isEulerian(simpleGraph)); - } - - @Test - public void givenGraphWithEulerianCircuit_whenGetEulerianCycle_thenGetGraphPath() { - HierholzerEulerianCycle eulerianCycle = new HierholzerEulerianCycle<>(); - GraphPath path = eulerianCycle.getEulerianCycle(simpleGraph); - assertTrue(path.getEdgeList().containsAll(simpleGraph.edgeSet())); - } -}