//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Parameterized.Parameters public static java.util.Collection<Object[]> data() public static ICollection <object[]> Data() { return(Arrays.asList(new object[][] { new object[] { PathExpanders.allTypesAndDirections(), PathInterestFactory.All(), Uniqueness.NODE_PATH, new string[] { "a", "a,b", "a,c", "a,b,d", "a,b,c", "a,c,b", "a,c,b,d" } }, new object[] { PathExpanders.allTypesAndDirections(), PathInterestFactory.AllShortest(), Uniqueness.NODE_PATH, new string[] { "a", "a,b", "a,c", "a,b,d" } }, new object[] { PathExpanders.forDirection(Direction.OUTGOING), PathInterestFactory.All(), Uniqueness.NODE_PATH, new string[] { "a", "a,b", "a,c", "a,b,d", "a,c,b", "a,c,b,d" } }, new object[] { PathExpanders.allTypesAndDirections(), PathInterestFactory.All(), Uniqueness.NODE_GLOBAL, new string[] { "a", "a,b", "a,c", "a,b,d" } }, new object[] { PathExpanders.allTypesAndDirections(), PathInterestFactory.All(), Uniqueness.RELATIONSHIP_GLOBAL, new string[] { "a", "a,b", "a,c", "a,b,d", "a,b,c" } } })); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testExactDepthPathsLoopsAllowed() public virtual void TestExactDepthPathsLoopsAllowed() { // Layout: // // (a)-->(b)==>(c)-->(e) // ^ / // \ v // (d) // Graph.makeEdgeChain("a,b,c,d,b,c,e"); Node a = Graph.getNode("a"); Node e = Graph.getNode("e"); AssertPaths((new ExactDepthPathFinder(PathExpanders.forDirection(Direction.OUTGOING), 6, int.MaxValue, true)).findAllPaths(a, e), "a,b,c,d,b,c,e"); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldHandleDirectionalGraph() public virtual void ShouldHandleDirectionalGraph() { // ALL DIRECTED from (a) towards (g) // (b) ----------------- (c) length 3 // / \ // (a) - (h) - (i) - (j) - (k) - (g) length 5 // \ / // (d) - (e) ------------ (f) length 4 Graph.makeEdgeChain("a,b,c,g"); Graph.makeEdgeChain("a,d,e,f,g"); Graph.makeEdgeChain("a,h,i,j,k,g"); Node a = Graph.getNode("a"); Node g = Graph.getNode("g"); AssertPaths((new ExactDepthPathFinder(PathExpanders.forDirection(Direction.OUTGOING), 3, int.MaxValue, false)).findAllPaths(a, g), "a,b,c,g"); AssertPaths((new ExactDepthPathFinder(PathExpanders.forDirection(Direction.OUTGOING), 4, int.MaxValue, false)).findAllPaths(a, g), "a,d,e,f,g"); AssertPaths((new ExactDepthPathFinder(PathExpanders.forDirection(Direction.OUTGOING), 5, int.MaxValue, false)).findAllPaths(a, g), "a,h,i,j,k,g"); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void makeSureDescentStopsWhenPathIsFound() public virtual void MakeSureDescentStopsWhenPathIsFound() { /* * (a)==>(b)==>(c)==>(d)==>(e) * \ * v * (f)-->(g)-->(h)-->(i) */ Graph.makeEdgeChain("a,b,c,d,e"); Graph.makeEdgeChain("a,b,c,d,e"); Graph.makeEdgeChain("a,f,g,h,i"); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.graphdb.Node a = graph.getNode("a"); Node a = Graph.getNode("a"); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.graphdb.Node b = graph.getNode("b"); Node b = Graph.getNode("b"); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.graphdb.Node c = graph.getNode("c"); Node c = Graph.getNode("c"); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final java.util.Set<org.neo4j.graphdb.Node> allowedNodes = new java.util.HashSet<>(java.util.Arrays.asList(a, b, c)); ISet <Node> allowedNodes = new HashSet <Node>(Arrays.asList(a, b, c)); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.graphalgo.PathFinder<org.neo4j.graphdb.Path> finder = new ShortestPath(100, org.neo4j.graphdb.PathExpanders.forDirection(OUTGOING)) PathFinder <Path> finder = new ShortestPathAnonymousInnerClass(this, PathExpanders.forDirection(OUTGOING), allowedNodes); IEnumerator <Path> paths = finder.FindAllPaths(a, c).GetEnumerator(); for (int i = 0; i < 4; i++) { //JAVA TO C# CONVERTER TODO TASK: Java iterators are only converted within the context of 'while' and 'for' loops: Path aToBToC = paths.next(); AssertPath(aToBToC, a, b, c); } //JAVA TO C# CONVERTER TODO TASK: Java iterators are only converted within the context of 'while' and 'for' loops: assertFalse("should only have contained four paths", paths.hasNext()); }