1
私は、私が書いたモジュールをテストするテストクラスと、開発したユーザー定義関数をテストするテストクラスがあります。これらの2つのテストは、テスト目的でNeo4jを別々にインスタンス化します。モジュールのテストはこのようにそれをしない:UDFとカスタムモジュールを同じユニットテストで読み込んで組み込みデータベースをインスタンス化する
class ModuleTest
{
GraphDatabaseService database;
@Before
public void setUp()
{
String confFile = this.getClass().getClassLoader().getResource("neo4j-module.conf").getPath();
database = new TestGraphDatabaseFactory()
.newImpermanentDatabaseBuilder()
.loadPropertiesFromFile(confFile)
.newGraphDatabase();
}
}
UDFテストクラスがこのようにその組み込みデータベースをインスタンス化している間:
public class UdfTest
{
@Rule
public Neo4jRule neo4j = new Neo4jRule()
.withFunction(Udf.class);
@Test
public void someTest() throws Throwable
{
try (Driver driver = GraphDatabase.driver(neo4j.boltURI() , Config.build().withEncryptionLevel(Config.EncryptionLevel.NONE).toConfig())) {
Session session = driver.session();
//...
}
}
}
ここでの問題は、最初の形式でのUDFはに登録されていないということですモジュールの2番目。私の質問は、私のモジュールとUDFの両方がロードされているテストで、組み込みNeo4jデータベースを起動するにはどうすればいいですか?