Search in sources :

Example 6 with OBasicCommandContext

use of com.orientechnologies.orient.core.command.OBasicCommandContext in project orientdb by orientechnologies.

the class OSQLFunctionAstarTest method test1Execute.

@Test
public void test1Execute() throws Exception {
    Map<String, Object> options = new HashMap<String, Object>();
    options.put(OSQLFunctionAstar.PARAM_DIRECTION, "out");
    options.put(OSQLFunctionAstar.PARAM_PARALLEL, true);
    options.put(OSQLFunctionAstar.PARAM_EDGE_TYPE_NAMES, new String[] { "has_path" });
    final List<OrientVertex> result = functionAstar.execute(null, null, null, new Object[] { v1, v4, "'weight'", options }, new OBasicCommandContext());
    assertEquals(16, graph.countEdges("has_path"));
    assertEquals(4, result.size());
    assertEquals(v1, result.get(0));
    assertEquals(v2, result.get(1));
    assertEquals(v3, result.get(2));
    assertEquals(v4, result.get(3));
}
Also used : OBasicCommandContext(com.orientechnologies.orient.core.command.OBasicCommandContext) HashMap(java.util.HashMap) OrientVertex(com.tinkerpop.blueprints.impls.orient.OrientVertex) Test(org.junit.Test)

Example 7 with OBasicCommandContext

use of com.orientechnologies.orient.core.command.OBasicCommandContext in project orientdb by orientechnologies.

the class OSQLFunctionAstarTest method test9Execute.

@Test
public void test9Execute() throws Exception {
    Map<String, Object> options = new HashMap<String, Object>();
    options.put(OSQLFunctionAstar.PARAM_DIRECTION, Direction.BOTH);
    options.put(OSQLFunctionAstar.PARAM_PARALLEL, true);
    options.put(OSQLFunctionAstar.PARAM_TIE_BREAKER, false);
    options.put(OSQLFunctionAstar.PARAM_EDGE_TYPE_NAMES, new String[] { "has_path" });
    options.put(OSQLFunctionAstar.PARAM_VERTEX_AXIS_NAMES, new String[] { "lat", "lon" });
    options.put(OSQLFunctionAstar.PARAM_HEURISTIC_FORMULA, HeuristicFormula.MAXAXIS);
    final List<OrientVertex> result = functionAstar.execute(null, null, null, new Object[] { v6, v1, "'weight'", options }, new OBasicCommandContext());
    assertEquals(16, graph.countEdges("has_path"));
    assertEquals(3, result.size());
    assertEquals(v6, result.get(0));
    assertEquals(v5, result.get(1));
    assertEquals(v1, result.get(2));
}
Also used : OBasicCommandContext(com.orientechnologies.orient.core.command.OBasicCommandContext) HashMap(java.util.HashMap) OrientVertex(com.tinkerpop.blueprints.impls.orient.OrientVertex) Test(org.junit.Test)

Example 8 with OBasicCommandContext

use of com.orientechnologies.orient.core.command.OBasicCommandContext in project orientdb by orientechnologies.

the class OSQLFunctionAstarTest method test11Execute.

@Test
public void test11Execute() throws Exception {
    Map<String, Object> options = new HashMap<String, Object>();
    options.put(OSQLFunctionAstar.PARAM_DIRECTION, Direction.OUT);
    options.put(OSQLFunctionAstar.PARAM_PARALLEL, true);
    options.put(OSQLFunctionAstar.PARAM_TIE_BREAKER, false);
    options.put(OSQLFunctionAstar.PARAM_EMPTY_IF_MAX_DEPTH, true);
    options.put(OSQLFunctionAstar.PARAM_MAX_DEPTH, 3);
    options.put(OSQLFunctionAstar.PARAM_EDGE_TYPE_NAMES, new String[] { "has_path" });
    options.put(OSQLFunctionAstar.PARAM_VERTEX_AXIS_NAMES, new String[] { "lat", "lon" });
    options.put(OSQLFunctionAstar.PARAM_HEURISTIC_FORMULA, HeuristicFormula.CUSTOM);
    options.put(OSQLFunctionAstar.PARAM_CUSTOM_HEURISTIC_FORMULA, "myCustomHeuristic");
    final List<OrientVertex> result = functionAstar.execute(null, null, null, new Object[] { v6, v1, "'weight'", options }, new OBasicCommandContext());
    assertEquals(16, graph.countEdges("has_path"));
    assertEquals(0, result.size());
}
Also used : OBasicCommandContext(com.orientechnologies.orient.core.command.OBasicCommandContext) HashMap(java.util.HashMap) OrientVertex(com.tinkerpop.blueprints.impls.orient.OrientVertex) Test(org.junit.Test)

Example 9 with OBasicCommandContext

use of com.orientechnologies.orient.core.command.OBasicCommandContext in project orientdb by orientechnologies.

the class OSQLFunctionDijkstraTest method testExecute.

@Test
public void testExecute() throws Exception {
    final List<OrientVertex> result = functionDijkstra.execute(null, null, null, new Object[] { v1, v4, "'weight'" }, new OBasicCommandContext());
    assertEquals(4, result.size());
    assertEquals(v1, result.get(0));
    assertEquals(v2, result.get(1));
    assertEquals(v3, result.get(2));
    assertEquals(v4, result.get(3));
}
Also used : OBasicCommandContext(com.orientechnologies.orient.core.command.OBasicCommandContext) OrientVertex(com.tinkerpop.blueprints.impls.orient.OrientVertex) Test(org.junit.Test)

Example 10 with OBasicCommandContext

use of com.orientechnologies.orient.core.command.OBasicCommandContext in project orientdb by orientechnologies.

the class OSQLFunctionShortestPathTest method testMaxDepth1.

@Test
public void testMaxDepth1() throws Exception {
    Map<String, Object> additionalParams = new HashMap<String, Object>();
    additionalParams.put(OSQLFunctionShortestPath.PARAM_MAX_DEPTH, 11);
    final List<ORID> result = function.execute(null, null, null, new Object[] { vertices.get(1), vertices.get(20), null, null, additionalParams }, new OBasicCommandContext());
    assertEquals(11, result.size());
}
Also used : OBasicCommandContext(com.orientechnologies.orient.core.command.OBasicCommandContext) HashMap(java.util.HashMap) ORID(com.orientechnologies.orient.core.id.ORID) Test(org.junit.Test)

Aggregations

OBasicCommandContext (com.orientechnologies.orient.core.command.OBasicCommandContext)29 Test (org.junit.Test)22 HashMap (java.util.HashMap)16 OrientVertex (com.tinkerpop.blueprints.impls.orient.OrientVertex)13 ORID (com.orientechnologies.orient.core.id.ORID)8 ODocument (com.orientechnologies.orient.core.record.impl.ODocument)6 Test (org.testng.annotations.Test)5 ODatabaseDocument (com.orientechnologies.orient.core.db.document.ODatabaseDocument)3 OFunction (com.orientechnologies.orient.core.metadata.function.OFunction)3 OCommandContext (com.orientechnologies.orient.core.command.OCommandContext)2 ODatabaseDocumentTx (com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx)2 OException (com.orientechnologies.common.exception.OException)1 OPair (com.orientechnologies.common.util.OPair)1 OCommandScriptException (com.orientechnologies.orient.core.command.script.OCommandScriptException)1 ODocumentComparator (com.orientechnologies.orient.core.record.impl.ODocumentComparator)1 OETLBaseTest (com.orientechnologies.orient.etl.OETLBaseTest)1 OHttpRequestWrapper (com.orientechnologies.orient.server.network.protocol.http.OHttpRequestWrapper)1 OHttpResponseWrapper (com.orientechnologies.orient.server.network.protocol.http.OHttpResponseWrapper)1 IOException (java.io.IOException)1