public Neo4jRule( File workingDirectory ) { this( TestServerBuilders.newInProcessBuilder( workingDirectory ) ); }
public Neo4jRule( ) { this( TestServerBuilders.newInProcessBuilder() ); }
private TestServerBuilder getTestServerBuilder( File workDir ) { return newInProcessBuilder( workDir ); }
private TestServerBuilder createServer( Class<?> procedureClass ) { return TestServerBuilders.newInProcessBuilder() .withProcedure( procedureClass ); }
private TestServerBuilder createServer( Class<?> functionClass ) { return TestServerBuilders.newInProcessBuilder() .withAggregationFunction( functionClass ); }
private TestServerBuilder createServer( Class<?> functionClass ) { return TestServerBuilders.newInProcessBuilder() .withFunction( functionClass ); }
private TestServerBuilder getServerBuilder( File targetFolder ) { TestServerBuilder serverBuilder = newInProcessBuilder( targetFolder ) .withConfig( LegacySslPolicyConfig.certificates_directory.name(), ServerTestUtils.getRelativePath( testDir.directory(), LegacySslPolicyConfig.certificates_directory ) ); return serverBuilder; }
private void testStartupWithConnectors( boolean httpEnabled, boolean httpsEnabled, boolean boltEnabled ) { TestServerBuilder serverBuilder = newInProcessBuilder( testDir.directory() ) .withConfig( "dbms.connector.http.enabled", Boolean.toString( httpEnabled ) ) .withConfig( "dbms.connector.http.listen_address", ":0" ) .withConfig( "dbms.connector.https.enabled", Boolean.toString( httpsEnabled ) ) .withConfig( "dbms.connector.https.listen_address", ":0" ) .withConfig( "dbms.connector.bolt.enabled", Boolean.toString( boltEnabled ) ) .withConfig( "dbms.connector.bolt.listen_address", ":0" ); try ( ServerControls server = serverBuilder.newServer() ) { GraphDatabaseService db = server.graph(); assertDbAccessible( db ); verifyConnector( db, "http", httpEnabled ); verifyConnector( db, "https", httpsEnabled ); verifyConnector( db, "bolt", boltEnabled ); } }
@Test public void shouldReturnBoltUriWhenDefaultBoltConnectorOffAndOtherConnectorConfigured() { TestServerBuilder serverBuilder = newInProcessBuilder( testDir.directory() ) .withConfig( "dbms.connector.bolt.enabled", "false" ) .withConfig( "dbms.connector.another_bolt.type", "BOLT" ) .withConfig( "dbms.connector.another_bolt.enabled", "true" ) .withConfig( "dbms.connector.another_bolt.listen_address", ":0" ); try ( ServerControls server = serverBuilder.newServer() ) { HostnamePort boltHostPort = connectorAddress( server.graph(), "bolt" ); HostnamePort anotherBoltHostPort = connectorAddress( server.graph(), "another_bolt" ); assertNull( boltHostPort ); assertNotNull( anotherBoltHostPort ); URI boltUri = server.boltURI(); assertEquals( "bolt", boltUri.getScheme() ); assertEquals( anotherBoltHostPort.getHost(), boltUri.getHost() ); assertEquals( anotherBoltHostPort.getPort(), boltUri.getPort() ); } }
@Test public void shouldReturnBoltUriWhenMultipleBoltConnectorsConfigured() { TestServerBuilder serverBuilder = newInProcessBuilder( testDir.directory() ) .withConfig( "dbms.connector.another_bolt.type", "BOLT" ) .withConfig( "dbms.connector.another_bolt.enabled", "true" ) .withConfig( "dbms.connector.another_bolt.listen_address", ":0" ) .withConfig( "dbms.connector.bolt.enabled", "true" ) .withConfig( "dbms.connector.bolt.listen_address", ":0" ); try ( ServerControls server = serverBuilder.newServer() ) { HostnamePort boltHostPort = connectorAddress( server.graph(), "bolt" ); HostnamePort anotherBoltHostPort = connectorAddress( server.graph(), "another_bolt" ); assertNotNull( boltHostPort ); assertNotNull( anotherBoltHostPort ); assertNotEquals( boltHostPort, anotherBoltHostPort ); URI boltUri = server.boltURI(); assertEquals( "bolt", boltUri.getScheme() ); assertEquals( boltHostPort.getHost(), boltUri.getHost() ); assertEquals( boltHostPort.getPort(), boltUri.getPort() ); } }
public Neo4jRule( ) { this( TestServerBuilders.newInProcessBuilder() ); }
public Neo4jRule( File workingDirectory ) { this( TestServerBuilders.newInProcessBuilder( workingDirectory ) ); }
@BeforeClass public static void setUp() throws Exception { server = TestServerBuilders.newInProcessBuilder().withFixture(setup) .withConfig("dbms.security.auth_enabled", "false").newServer(); BOLT_URL = "'"+server.boltURI().toString()+"'"; db = new TestGraphDatabaseFactory().newImpermanentDatabaseBuilder().newGraphDatabase(); TestUtil.registerProcedure(db, Bolt.class); }
@BeforeClass public static void initializeNeo4j() throws IOException { serverControls = TestServerBuilders.newInProcessBuilder().withProcedure(ApocLovesSwitch.class) .newServer(); boltURI = serverControls.boltURI(); }
@Test public void testMyExtension() throws Exception { // Given try ( ServerControls server = TestServerBuilders.newInProcessBuilder() .withExtension( "/myExtension", MyUnmanagedExtension.class ) .newServer() ) { // When HTTP.Response response = HTTP.GET( server.httpURI().resolve( "myExtension" ).toString() ); // Then assertEquals( 200, response.status() ); } }
@BeforeClass public static void startServer() { serverControls = TestServerBuilders.newInProcessBuilder() .withFixture(database -> { database.execute("MATCH (n:CONSTRAINTED_NODE) DETACH DELETE n"); database.execute("CREATE CONSTRAINT ON (n:CONSTRAINTED_NODE) ASSERT n.name IS UNIQUE"); database.execute("CREATE (n:CONSTRAINTED_NODE {name: 'test'})"); return null; }).newServer(); }
@Test public void testMyExtensionWithFunctionFixture() throws Exception { // Given try ( ServerControls server = TestServerBuilders.newInProcessBuilder() .withExtension( "/myExtension", MyUnmanagedExtension.class ) .withFixture( new Function<GraphDatabaseService, Void>() { @Override public Void apply( GraphDatabaseService graphDatabaseService ) throws RuntimeException { try ( Transaction tx = graphDatabaseService.beginTx() ) { graphDatabaseService.createNode( DynamicLabel.label( "User" ) ); tx.success(); } return null; } } ) .newServer() ) { // When Result result = server.graph().execute( "MATCH (n:User) return n" ); // Then assertEquals( 1, IteratorUtil.count( result ) ); } } // END SNIPPET: testExtension
@BeforeClass public static void startServer() { serverControls = TestServerBuilders.newInProcessBuilder().newServer(); Driver driver = GraphDatabase.driver(serverControls.boltURI(), Config.build().withoutEncryption().toConfig()); supportsBytePacking = ServerVersion.version(driver).greaterThanOrEqual(ServerVersion.v3_2_0); sessionFactory = new SessionFactory(new BoltDriver(driver), DOMAIN_PACKAGE); }
@Test public void translatesServiceUnavailabeException() { try (ServerControls serverControls = TestServerBuilders.newInProcessBuilder().newServer()) { BoltDriver driver = new BoltDriver(); Configuration ogmConfiguration = new Configuration.Builder().uri(serverControls.boltURI().toString()) .verifyConnection(true).build(); driver.configure(ogmConfiguration); SessionFactory sessionFactory = new SessionFactory(driver, DOMAIN_PACKAGE); Session session = sessionFactory.openSession(); serverControls.close(); assertThatExceptionOfType(ConnectionException.class).isThrownBy(() -> { session.loadAll(ConstraintedNode.class); }).withCauseInstanceOf(ServiceUnavailableException.class); } } }