[07/11] tinkerpop git commit: added a test for iterations break, epsilon break, and for energy conservation.

2017-09-22 Thread okram
added a test for iterations break, epsilon break, and for energy conservation.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2d551c18
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2d551c18
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2d551c18

Branch: refs/heads/master
Commit: 2d551c18a80f528d3fe296144a2d7a68467b0fff
Parents: 87a7391
Author: Marko A. Rodriguez 
Authored: Wed Sep 20 08:55:52 2017 -0600
Committer: Marko A. Rodriguez 
Committed: Wed Sep 20 08:55:52 2017 -0600

--
 .../pagerank/PageRankVertexProgramTest.java | 50 
 1 file changed, 41 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2d551c18/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
--
diff --git 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
index 6fb3cb7..8b4f977 100644
--- 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
+++ 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
@@ -36,7 +36,7 @@ public class PageRankVertexProgramTest extends 
AbstractGremlinProcessTest {
 
 @Test
 @LoadGraphWith(MODERN)
-public void shouldExecutePageRank() throws Exception {
+public void shouldExecutePageRankWithIterationsBreak() throws Exception {
 if 
(graphProvider.getGraphComputer(graph).features().supportsResultGraphPersistCombination(GraphComputer.ResultGraph.NEW,
 GraphComputer.Persist.VERTEX_PROPERTIES)) {
 final ComputerResult result = 
graph.compute(graphProvider.getGraphComputer(graph).getClass()).
 
program(PageRankVertexProgram.build().epsilon(0.0d).iterations(30).create(graph)).submit().get();
 // by using epsilon 0.0, we guarantee iterations 30
@@ -69,14 +69,46 @@ public class PageRankVertexProgramTest extends 
AbstractGremlinProcessTest {
 }
 }
 
-/*@Test
+@Test
 @LoadGraphWith(MODERN)
-public void shouldExecutePageRankWithNormalizedValues() throws Exception {
-final ComputerResult result = 
graph.compute().program(PageRankVertexProgram.build().vertexCount(6).create()).submit().get();
-final double sum = 
result.graph().traversal().V().values(PageRankVertexProgram.PAGE_RANK).sum().next();
-System.out.println(sum);
-assertEquals(1.0d,sum,0.01);
-}*/
-
+public void shouldExecutePageRankWithEpsilonBreak() throws Exception {
+if 
(graphProvider.getGraphComputer(graph).features().supportsResultGraphPersistCombination(GraphComputer.ResultGraph.NEW,
 GraphComputer.Persist.VERTEX_PROPERTIES)) {
+final ComputerResult result = 
graph.compute(graphProvider.getGraphComputer(graph).getClass()).
+
program(PageRankVertexProgram.build().epsilon(0.1d).iterations(30).create(graph)).submit().get();
 // by using epsilon 0.1, we should get iterations 11
+result.graph().traversal().V().forEachRemaining(v -> {
+assertEquals(3, v.keys().size()); // name, age/lang, pageRank
+assertTrue(v.keys().contains("name"));
+assertTrue(v.keys().contains(PageRankVertexProgram.PAGE_RANK));
+assertEquals(1, IteratorUtils.count(v.values("name")));
+assertEquals(1, 
IteratorUtils.count(v.values(PageRankVertexProgram.PAGE_RANK)));
+final String name = v.value("name");
+final Double pageRank = 
v.value(PageRankVertexProgram.PAGE_RANK);
+//System.out.println(name + "-" + pageRank);
+if (name.equals("marko"))
+assertTrue(pageRank > 0.10 && pageRank < 0.12);
+else if (name.equals("vadas"))
+assertTrue(pageRank > 0.13 && pageRank < 0.15);
+else if (name.equals("lop"))
+assertTrue(pageRank > 0.29 && pageRank < 0.31);
+else if (name.equals("josh"))
+assertTrue(pageRank > 0.13 && pageRank < 0.15);
+else if (name.equals("ripple"))
+assertTrue(pageRank > 0.16 && pageRank < 0.18);
+else if (name.equals("peter"))
+assertTrue(pageRank > 0.10 && pageRank < 0.12);
+else
+throw new IllegalStateException("The 

tinkerpop git commit: added a test for iterations break, epsilon break, and for energy conservation.

2017-09-20 Thread okram
Repository: tinkerpop
Updated Branches:
  refs/heads/TINKERPOP-1783 87a739172 -> 2d551c18a


added a test for iterations break, epsilon break, and for energy conservation.


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2d551c18
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2d551c18
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2d551c18

Branch: refs/heads/TINKERPOP-1783
Commit: 2d551c18a80f528d3fe296144a2d7a68467b0fff
Parents: 87a7391
Author: Marko A. Rodriguez 
Authored: Wed Sep 20 08:55:52 2017 -0600
Committer: Marko A. Rodriguez 
Committed: Wed Sep 20 08:55:52 2017 -0600

--
 .../pagerank/PageRankVertexProgramTest.java | 50 
 1 file changed, 41 insertions(+), 9 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2d551c18/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
--
diff --git 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
index 6fb3cb7..8b4f977 100644
--- 
a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
+++ 
b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/computer/ranking/pagerank/PageRankVertexProgramTest.java
@@ -36,7 +36,7 @@ public class PageRankVertexProgramTest extends 
AbstractGremlinProcessTest {
 
 @Test
 @LoadGraphWith(MODERN)
-public void shouldExecutePageRank() throws Exception {
+public void shouldExecutePageRankWithIterationsBreak() throws Exception {
 if 
(graphProvider.getGraphComputer(graph).features().supportsResultGraphPersistCombination(GraphComputer.ResultGraph.NEW,
 GraphComputer.Persist.VERTEX_PROPERTIES)) {
 final ComputerResult result = 
graph.compute(graphProvider.getGraphComputer(graph).getClass()).
 
program(PageRankVertexProgram.build().epsilon(0.0d).iterations(30).create(graph)).submit().get();
 // by using epsilon 0.0, we guarantee iterations 30
@@ -69,14 +69,46 @@ public class PageRankVertexProgramTest extends 
AbstractGremlinProcessTest {
 }
 }
 
-/*@Test
+@Test
 @LoadGraphWith(MODERN)
-public void shouldExecutePageRankWithNormalizedValues() throws Exception {
-final ComputerResult result = 
graph.compute().program(PageRankVertexProgram.build().vertexCount(6).create()).submit().get();
-final double sum = 
result.graph().traversal().V().values(PageRankVertexProgram.PAGE_RANK).sum().next();
-System.out.println(sum);
-assertEquals(1.0d,sum,0.01);
-}*/
-
+public void shouldExecutePageRankWithEpsilonBreak() throws Exception {
+if 
(graphProvider.getGraphComputer(graph).features().supportsResultGraphPersistCombination(GraphComputer.ResultGraph.NEW,
 GraphComputer.Persist.VERTEX_PROPERTIES)) {
+final ComputerResult result = 
graph.compute(graphProvider.getGraphComputer(graph).getClass()).
+
program(PageRankVertexProgram.build().epsilon(0.1d).iterations(30).create(graph)).submit().get();
 // by using epsilon 0.1, we should get iterations 11
+result.graph().traversal().V().forEachRemaining(v -> {
+assertEquals(3, v.keys().size()); // name, age/lang, pageRank
+assertTrue(v.keys().contains("name"));
+assertTrue(v.keys().contains(PageRankVertexProgram.PAGE_RANK));
+assertEquals(1, IteratorUtils.count(v.values("name")));
+assertEquals(1, 
IteratorUtils.count(v.values(PageRankVertexProgram.PAGE_RANK)));
+final String name = v.value("name");
+final Double pageRank = 
v.value(PageRankVertexProgram.PAGE_RANK);
+//System.out.println(name + "-" + pageRank);
+if (name.equals("marko"))
+assertTrue(pageRank > 0.10 && pageRank < 0.12);
+else if (name.equals("vadas"))
+assertTrue(pageRank > 0.13 && pageRank < 0.15);
+else if (name.equals("lop"))
+assertTrue(pageRank > 0.29 && pageRank < 0.31);
+else if (name.equals("josh"))
+assertTrue(pageRank > 0.13 && pageRank < 0.15);
+else if (name.equals("ripple"))
+assertTrue(pageRank > 0.16 && pageRank < 0.18);
+else if (name.equals("peter"))
+assertTrue(pageRank > 0.10