使用GraphAware Timetree进行测试

时间:2016-11-06 08:24:26

标签: neo4j spring-data-neo4j-4 graphaware

我已经开始使用GraphAware timetree用于neo4j,到目前为止它的工作非常好。现在,我试图找出如何对使用neo4j timetree的代码进行单元/集成测试的方法。

我已将下面的代码放在一起......但我仍然收到了消息:

org.neo4j.ogm.exception.CypherException: Error executing Cypher "Neo.ClientError.Procedure.ProcedureNotFound"; Code: Neo.ClientError.Procedure.ProcedureNotFound; Description: There is no procedure with the name `ga.timetree.events.attach` registered for this database instance. Please ensure you've spelled the procedure name correctly and that the procedure is properly deployed.

我是否走在正确的轨道上?

package myproject.core;

import java.util.ArrayList;
import java.util.HashMap;

import javax.inject.Inject;

import org.junit.After;
import org.junit.runner.RunWith;
import org.neo4j.graphdb.DynamicLabel;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.ogm.session.Session;
import org.neo4j.ogm.session.SessionFactory;
import org.neo4j.ogm.testutil.MultiDriverTestClass;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.neo4j.template.Neo4jOperations;
import org.springframework.test.context.junit4.SpringRunner;

import com.graphaware.common.policy.NodeInclusionPolicy;
import com.graphaware.module.timetree.module.TimeTreeConfiguration;
import com.graphaware.module.timetree.module.TimeTreeModule;
import com.graphaware.runtime.GraphAwareRuntime;
import com.graphaware.runtime.GraphAwareRuntimeFactory;

import myproject.core.context.TestPersistenceContext;

@RunWith(SpringRunner.class)
@SpringBootTest(classes = TestPersistenceContext.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class AbstractTest extends MultiDriverTestClass {

    @Inject
    private Neo4jOperations neo4jOperations;

    public AbstractTest() {
        new SessionFactory("myproject.model.pojos").openSession();

        TimeTreeConfiguration timeTreeConfiguration = TimeTreeConfiguration.defaultConfiguration();
        TimeTreeModule timeTreeModule = new TimeTreeModule("TT.1", timeTreeConfiguration, super.getGraphDatabaseService());

        GraphAwareRuntime runtime = GraphAwareRuntimeFactory.createRuntime(super.getGraphDatabaseService());
        runtime.registerModule(timeTreeModule);
        runtime.start();
    }

    @After
    public void clearDatabase() {
        neo4jOperations.query("match (n) detach delete n;", new HashMap<>());
        neo4jOperations.clear();

    }

}

1 个答案:

答案 0 :(得分:3)

请将您的@media (max-width:750px){ #buy-box {width: 300px;} } #buy-box{ width:500px; } ** width will be 500px and 300px will be crossed out in Developer Tools. ** #buy-box{ width:500px; } @media (max-width:750px){ #buy-box {width: 300px;} } ** width will be 300px and 500px will be crossed out ** 构造函数更改为如下所示:

AbstractTest()

请注意添加的行:public AbstractTest() { new SessionFactory("myproject.model.pojos").openSession(); TimeTreeConfiguration timeTreeConfiguration = TimeTreeConfiguration.defaultConfiguration(); TimeTreeModule timeTreeModule = new TimeTreeModule("TT.1", timeTreeConfiguration, super.getGraphDatabaseService()); TimeTreeProcedures.register(super.getGraphDatabaseService()); GraphAwareRuntime runtime = GraphAwareRuntimeFactory.createRuntime(super.getGraphDatabaseService()); runtime.registerModule(timeTreeModule); runtime.start(); }