Coverage Summary for Class: TestTopologyMultipleGraphs (org.umlg.sqlg.test.topology)

Class Class, % Method, % Branch, % Line, %
TestTopologyMultipleGraphs 100% (1/1) 100% (6/6) 27.8% (5/18) 92.8% (90/97)


 package org.umlg.sqlg.test.topology;
 
 import org.apache.commons.configuration2.builder.fluent.Configurations;
 import org.apache.commons.configuration2.ex.ConfigurationException;
 import org.apache.tinkerpop.gremlin.structure.Edge;
 import org.apache.tinkerpop.gremlin.structure.T;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
 import org.junit.Assume;
 import org.junit.BeforeClass;
 import org.junit.Test;
 import org.umlg.sqlg.structure.SqlgGraph;
 import org.umlg.sqlg.test.BaseTest;
 
 import java.net.URL;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.fail;
 
 /**
  * Date: 2016/11/08
  * Time: 5:09 AM
  */
 public class TestTopologyMultipleGraphs extends BaseTest {
 
     @SuppressWarnings("Duplicates")
     @BeforeClass
     public static void beforeClass() {
         URL sqlProperties = Thread.currentThread().getContextClassLoader().getResource("sqlg.properties");
         try {
             Configurations configs = new Configurations();
             configuration = configs.properties(sqlProperties);
             Assume.assumeTrue(isPostgres());
             configuration.addProperty("distributed", true);
             if (!configuration.containsKey("jdbc.url"))
                 throw new IllegalArgumentException(String.format("SqlGraph configuration requires that the %s be set", "jdbc.url"));
 
         } catch (ConfigurationException e) {
             throw new RuntimeException(e);
         }
     }
 
     @Test
     public void testDeepEqualsPublicSchema() {
         try (SqlgGraph sqlgGraph1 = SqlgGraph.open(configuration)) {
             Vertex a1 = this.sqlgGraph.addVertex(T.label, "A");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             a1.property("test", "asdasd");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             Vertex b1 = this.sqlgGraph.addVertex(T.label, "B", "name", "b1");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             a1.addEdge("ab", b1);
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             Vertex bb1 = this.sqlgGraph.addVertex(T.label, "BB", "name", "bb1");
             a1.addEdge("ab", bb1);
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             Vertex aa1 = this.sqlgGraph.addVertex(T.label, "AA", "name", "aa1");
             Edge ab = aa1.addEdge("ab", bb1);
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             ab.property("test", "asdasd");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
         } catch (Exception e) {
             fail(e.getMessage());
         }
     }
 
     @Test
     public void testDeepEqualsAcrossSchema() {
         try (SqlgGraph sqlgGraph1 = SqlgGraph.open(configuration)) {
             Vertex a1 = this.sqlgGraph.addVertex(T.label, "A.A");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             a1.property("test", "asdasd");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             Vertex b1 = this.sqlgGraph.addVertex(T.label, "B.B", "name", "b1");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             a1.addEdge("ab", b1);
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             Vertex bb1 = this.sqlgGraph.addVertex(T.label, "BB.BB", "name", "bb1");
             a1.addEdge("ab", bb1);
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             Vertex aa1 = this.sqlgGraph.addVertex(T.label, "AA.AA", "name", "aa1");
             Edge ab = aa1.addEdge("ab", bb1);
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             ab.property("test", "asdasd");
             this.sqlgGraph.tx().commit();
             Thread.sleep(1_000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
 
             assertEquals(4, this.sqlgGraph.traversal().V().count().next(), 0);
             assertEquals(4, sqlgGraph1.traversal().V().count().next(), 0);
             assertEquals(3, this.sqlgGraph.traversal().E().count().next(), 0);
             assertEquals(3, sqlgGraph1.traversal().E().count().next(), 0);
 
             assertEquals(2, this.sqlgGraph.traversal().V(a1.id()).out("ab").count().next(), 0);
             assertEquals(2, sqlgGraph1.traversal().V(a1.id()).out("ab").count().next(), 0);
             assertEquals(1, this.sqlgGraph.traversal().V(aa1.id()).out("ab").count().next(), 0);
             assertEquals(1, sqlgGraph1.traversal().V(aa1.id()).out("ab").count().next(), 0);
         } catch (Exception e) {
             fail(e.getMessage());
         }
     }
 
     @Test
     public void testModernAcrossGraphs() {
         try (SqlgGraph sqlgGraph1 = SqlgGraph.open(configuration)) {
             loadModern();
             Thread.sleep(1000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
         } catch (Exception e) {
             fail(e.getMessage());
         }
     }
 
     @Test
     public void testGratefulDeadAcrossGraphs() {
         try (SqlgGraph sqlgGraph1 = SqlgGraph.open(configuration)) {
             loadGratefulDead();
             Thread.sleep(1000);
             assertEquals(this.sqlgGraph.getTopology(), sqlgGraph1.getTopology());
         } catch (Exception e) {
             fail(e.getMessage());
         }
     }
 }