diff --git a/community/neo4j-harness/src/test/java/org/neo4j/harness/FixturesTest.java b/community/neo4j-harness/src/test/java/org/neo4j/harness/FixturesTest.java index 54a14c7ffccb4..b7bea9692868f 100644 --- a/community/neo4j-harness/src/test/java/org/neo4j/harness/FixturesTest.java +++ b/community/neo4j-harness/src/test/java/org/neo4j/harness/FixturesTest.java @@ -28,8 +28,10 @@ import org.neo4j.graphdb.Label; import org.neo4j.graphdb.Transaction; import org.neo4j.io.fs.FileUtils; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.kernel.configuration.ssl.LegacySslPolicyConfig; import org.neo4j.server.ServerTestUtils; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.test.rule.TestDirectory; import org.neo4j.test.server.HTTP; @@ -223,7 +225,8 @@ private TestServerBuilder getServerBuilder( File targetFolder ) throws IOExcepti { TestServerBuilder serverBuilder = newInProcessBuilder( targetFolder ) .withConfig( LegacySslPolicyConfig.certificates_directory.name(), - ServerTestUtils.getRelativePath( testDir.directory(), LegacySslPolicyConfig.certificates_directory ) ); + ServerTestUtils.getRelativePath( testDir.directory(), LegacySslPolicyConfig.certificates_directory ) ) + .withConfig( ServerSettings.script_enabled, Settings.TRUE ); return serverBuilder; } diff --git a/community/neo4j-harness/src/test/java/org/neo4j/harness/InProcessBuilderTest.java b/community/neo4j-harness/src/test/java/org/neo4j/harness/InProcessBuilderTest.java index 10035a6d62929..82ee9afc88568 100644 --- a/community/neo4j-harness/src/test/java/org/neo4j/harness/InProcessBuilderTest.java +++ b/community/neo4j-harness/src/test/java/org/neo4j/harness/InProcessBuilderTest.java @@ -54,7 +54,9 @@ import org.neo4j.kernel.configuration.Config; import org.neo4j.kernel.configuration.HttpConnector; import org.neo4j.kernel.configuration.HttpConnector.Encryption; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.kernel.configuration.ssl.LegacySslPolicyConfig; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.server.rest.domain.JsonParseException; import org.neo4j.test.TestGraphDatabaseFactory; import org.neo4j.test.rule.SuppressOutput; @@ -100,7 +102,7 @@ public void shouldLaunchAServerInSpecifiedDirectory() throws Exception private TestServerBuilder getTestServerBuilder( File workDir ) { - return newInProcessBuilder( workDir ); + return newInProcessBuilder( workDir ).withConfig( ServerSettings.script_enabled, Settings.TRUE ); } @Test @@ -234,7 +236,7 @@ public void shouldRunBuilderOnExistingStoreDir() throws Exception public void shouldOpenBoltPort() throws Throwable { // given - try ( ServerControls controls = newInProcessBuilder().newServer() ) + try ( ServerControls controls = getTestServerBuilder( testDir.graphDbDir() ).newServer() ) { URI uri = controls.boltURI(); @@ -252,7 +254,8 @@ public void shouldFailWhenProvidingANonDirectoryAsSource() throws IOException File notADirectory = File.createTempFile( "prefix", "suffix" ); assertFalse( notADirectory.isDirectory() ); - try ( ServerControls ignored = newInProcessBuilder().copyFrom( notADirectory ).newServer() ) + try ( ServerControls ignored = getTestServerBuilder( testDir.graphDbDir() ) + .copyFrom( notADirectory ).newServer() ) { fail( "server should not start" ); } diff --git a/community/neo4j-harness/src/test/java/org/neo4j/harness/JUnitRuleTest.java b/community/neo4j-harness/src/test/java/org/neo4j/harness/JUnitRuleTest.java index e16b79c22d650..e0ed663224515 100644 --- a/community/neo4j-harness/src/test/java/org/neo4j/harness/JUnitRuleTest.java +++ b/community/neo4j-harness/src/test/java/org/neo4j/harness/JUnitRuleTest.java @@ -32,7 +32,9 @@ import org.neo4j.harness.extensionpackage.MyUnmanagedExtension; import org.neo4j.harness.junit.Neo4jRule; import org.neo4j.helpers.collection.Iterators; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.kernel.configuration.ssl.LegacySslPolicyConfig; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.TestGraphDatabaseFactory; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.test.rule.TestDirectory; @@ -56,6 +58,7 @@ public class JUnitRuleTest .withFixture( "CREATE (u:User)" ) .withConfig( LegacySslPolicyConfig.certificates_directory.name(), getRelativePath( getSharedTestTemporaryFolder(), LegacySslPolicyConfig.certificates_directory ) ) + .withConfig( ServerSettings.script_enabled, Settings.TRUE ) .withFixture( graphDatabaseService -> { try ( Transaction tx = graphDatabaseService.beginTx() ) @@ -123,7 +126,9 @@ public void shouldRuleWorkWithExsitingDirectory() } // When a rule with an pre-populated graph db directory is used - final Neo4jRule ruleWithDirectory = new Neo4jRule(testDirectory.directory()).copyFrom( testDirectory.directory()); + final Neo4jRule ruleWithDirectory = new Neo4jRule(testDirectory.directory()) + .withConfig( ServerSettings.script_enabled, Settings.TRUE ) + .copyFrom( testDirectory.directory()); ruleWithDirectory.apply( new Statement() { @Override diff --git a/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaAggregationFunctionsTest.java b/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaAggregationFunctionsTest.java index 4a4db28fa54d8..720c5f343dc2c 100644 --- a/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaAggregationFunctionsTest.java +++ b/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaAggregationFunctionsTest.java @@ -23,9 +23,11 @@ import org.junit.Rule; import org.junit.Test; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.procedure.UserAggregationFunction; import org.neo4j.procedure.UserAggregationResult; import org.neo4j.procedure.UserAggregationUpdate; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.test.rule.TestDirectory; import org.neo4j.test.server.HTTP; @@ -75,8 +77,7 @@ public long result() public void shouldLaunchWithDeclaredFunctions() throws Exception { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder().withAggregationFunction( MyFunctions.class ) - .newServer() ) + try ( ServerControls server = createServer( MyFunctions.class ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), @@ -91,12 +92,18 @@ public void shouldLaunchWithDeclaredFunctions() throws Exception } } + private TestServerBuilder createServer( Class functionClass ) + { + return TestServerBuilders.newInProcessBuilder() + .withConfig( ServerSettings.script_enabled, Settings.TRUE ) + .withAggregationFunction( functionClass ); + } + @Test public void shouldGetHelpfulErrorOnProcedureThrowsException() throws Exception { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder().withAggregationFunction( MyFunctions.class ) - .newServer() ) + try ( ServerControls server = createServer( MyFunctions.class ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), diff --git a/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaFunctionsTest.java b/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaFunctionsTest.java index a565ca0f1c538..d1d82d3e4fd47 100644 --- a/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaFunctionsTest.java +++ b/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaFunctionsTest.java @@ -24,8 +24,10 @@ import org.junit.Test; import org.neo4j.kernel.api.exceptions.ProcedureException; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.procedure.Context; import org.neo4j.procedure.UserFunction; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.test.rule.TestDirectory; import org.neo4j.test.server.HTTP; @@ -90,12 +92,19 @@ public long countNodes() } } + private TestServerBuilder createServer( Class functionClass ) + { + return TestServerBuilders.newInProcessBuilder() + .withConfig( ServerSettings.script_enabled, Settings.TRUE ) + .withFunction( functionClass ); + } + @Test public void shouldLaunchWithDeclaredFunctions() throws Exception { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder().withFunction( MyFunctions.class ) - .newServer() ) + Class functionClass = MyFunctions.class; + try ( ServerControls server = createServer( functionClass ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), @@ -114,8 +123,7 @@ public void shouldLaunchWithDeclaredFunctions() throws Exception public void shouldGetHelpfulErrorOnProcedureThrowsException() throws Exception { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder().withFunction( MyFunctions.class ) - .newServer() ) + try ( ServerControls server = createServer( MyFunctions.class ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), @@ -134,8 +142,7 @@ public void shouldGetHelpfulErrorOnProcedureThrowsException() throws Exception public void shouldWorkWithInjectableFromKernelExtension() throws Throwable { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder() - .withFunction( MyFunctionsUsingMyService.class ).newServer() ) + try ( ServerControls server = createServer( MyFunctionsUsingMyService.class ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), @@ -152,8 +159,7 @@ public void shouldWorkWithInjectableFromKernelExtension() throws Throwable public void shouldWorkWithInjectableFromKernelExtensionWithMorePower() throws Throwable { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder() - .withFunction( MyFunctionsUsingMyCoreAPI.class ).newServer() ) + try ( ServerControls server = createServer( MyFunctionsUsingMyCoreAPI.class ).newServer() ) { HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), quotedJson( "{ 'statements': [ { 'statement': 'CREATE (), (), ()' } ] }" ) ); diff --git a/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaProceduresTest.java b/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaProceduresTest.java index 425e9eb0416dc..6c911172e6ecb 100644 --- a/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaProceduresTest.java +++ b/community/neo4j-harness/src/test/java/org/neo4j/harness/JavaProceduresTest.java @@ -27,10 +27,12 @@ import org.neo4j.graphdb.factory.GraphDatabaseSettings; import org.neo4j.kernel.api.exceptions.ProcedureException; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.procedure.Context; import org.neo4j.procedure.Mode; import org.neo4j.procedure.Name; import org.neo4j.procedure.Procedure; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.test.rule.TestDirectory; import org.neo4j.test.server.HTTP; @@ -122,13 +124,18 @@ public Stream countNodes() } } + private TestServerBuilder createServer( Class procedureClass ) + { + return TestServerBuilders.newInProcessBuilder() + .withProcedure( procedureClass ) + .withConfig( ServerSettings.script_enabled, Settings.TRUE ); + } + @Test public void shouldLaunchWithDeclaredProcedures() throws Exception { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder() - .withProcedure( MyProcedures.class ) - .newServer() ) + try ( ServerControls server = createServer( MyProcedures.class ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), @@ -145,9 +152,7 @@ public void shouldLaunchWithDeclaredProcedures() throws Exception public void shouldGetHelpfulErrorOnProcedureThrowsException() throws Exception { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder() - .withProcedure( MyProcedures.class ) - .newServer() ) + try ( ServerControls server = createServer( MyProcedures.class ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), @@ -162,8 +167,7 @@ public void shouldGetHelpfulErrorOnProcedureThrowsException() throws Exception public void shouldWorkWithInjectableFromKernelExtension() throws Throwable { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder() - .withProcedure( MyProceduresUsingMyService.class ).newServer() ) + try ( ServerControls server = createServer( MyProceduresUsingMyService.class ).newServer() ) { // Then HTTP.Response response = HTTP.POST( server.httpURI().resolve( "db/data/transaction/commit" ).toString(), @@ -180,9 +184,9 @@ public void shouldWorkWithInjectableFromKernelExtension() throws Throwable public void shouldWorkWithInjectableFromKernelExtensionWithMorePower() throws Throwable { // When - try ( ServerControls server = TestServerBuilders.newInProcessBuilder() + try ( ServerControls server = createServer( MyProceduresUsingMyCoreAPI.class ) .withConfig( GraphDatabaseSettings.record_id_batch_size, "1" ) - .withProcedure( MyProceduresUsingMyCoreAPI.class ).newServer() ) + .newServer() ) { // Then assertQueryGetsValue( server, "CALL makeNode(\\'Test\\')", 0L ); diff --git a/community/procedure-compiler/integration-tests/src/test/java/org/neo4j/tooling/procedure/ProcedureTest.java b/community/procedure-compiler/integration-tests/src/test/java/org/neo4j/tooling/procedure/ProcedureTest.java index 59013f8593c54..79bdd006fb301 100644 --- a/community/procedure-compiler/integration-tests/src/test/java/org/neo4j/tooling/procedure/ProcedureTest.java +++ b/community/procedure-compiler/integration-tests/src/test/java/org/neo4j/tooling/procedure/ProcedureTest.java @@ -28,6 +28,8 @@ import org.neo4j.driver.v1.Session; import org.neo4j.driver.v1.StatementResult; import org.neo4j.harness.junit.Neo4jRule; +import org.neo4j.kernel.configuration.Settings; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.tooling.procedure.procedures.valid.Procedures; @@ -42,7 +44,9 @@ public class ProcedureTest @Rule public final SuppressOutput suppressOutput = SuppressOutput.suppressAll(); @Rule - public Neo4jRule graphDb = new Neo4jRule().withProcedure( PROCEDURES_CLASS ); + public Neo4jRule graphDb = new Neo4jRule() + .withConfig( ServerSettings.script_enabled, Settings.TRUE ) + .withProcedure( PROCEDURES_CLASS ); private String procedureNamespace = PROCEDURES_CLASS.getPackage().getName(); @Test diff --git a/enterprise/neo4j-harness-enterprise/src/main/java/org/neo4j/harness/CausalClusterInProcessRunner.java b/enterprise/neo4j-harness-enterprise/src/main/java/org/neo4j/harness/CausalClusterInProcessRunner.java index 21ae954170589..3c96f7a0e726f 100644 --- a/enterprise/neo4j-harness-enterprise/src/main/java/org/neo4j/harness/CausalClusterInProcessRunner.java +++ b/enterprise/neo4j-harness-enterprise/src/main/java/org/neo4j/harness/CausalClusterInProcessRunner.java @@ -120,6 +120,7 @@ void boot() throws IOException, InterruptedException String homePath = Paths.get( clusterPath.toString(), homeDir ).toAbsolutePath().toString(); builder.withConfig( GraphDatabaseSettings.neo4j_home.name(), homePath ); builder.withConfig( GraphDatabaseSettings.pagecache_memory.name(), "8m" ); + builder.withConfig( ServerSettings.script_enabled, Settings.TRUE ); builder.withConfig( ClusterSettings.mode.name(), ClusterSettings.Mode.CORE.name() ); builder.withConfig( CausalClusteringSettings.multi_dc_license.name(), "true" ); diff --git a/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/internal/EnterpriseInProcessServerBuilderTest.java b/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/internal/EnterpriseInProcessServerBuilderTest.java index e79b4d067d299..9b8e7fc6a890e 100644 --- a/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/internal/EnterpriseInProcessServerBuilderTest.java +++ b/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/internal/EnterpriseInProcessServerBuilderTest.java @@ -28,8 +28,10 @@ import org.neo4j.harness.EnterpriseTestServerBuilders; import org.neo4j.harness.ServerControls; import org.neo4j.harness.TestServerBuilder; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.kernel.configuration.ssl.LegacySslPolicyConfig; import org.neo4j.server.ServerTestUtils; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.test.rule.TestDirectory; import org.neo4j.test.server.HTTP; @@ -69,6 +71,7 @@ private TestServerBuilder getTestServerBuilder( File workDir ) TestServerBuilder serverBuilder = EnterpriseTestServerBuilders.newInProcessBuilder( workDir ); serverBuilder.withConfig( LegacySslPolicyConfig.certificates_directory.name(), ServerTestUtils.getRelativePath( testDir.directory(), LegacySslPolicyConfig.certificates_directory ) ); + serverBuilder.withConfig( ServerSettings.script_enabled, Settings.TRUE ); return serverBuilder; } } diff --git a/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/junit/EnterpriseNeo4jRuleTest.java b/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/junit/EnterpriseNeo4jRuleTest.java index c7867fe0e7de8..51cf1da41ff3f 100644 --- a/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/junit/EnterpriseNeo4jRuleTest.java +++ b/enterprise/neo4j-harness-enterprise/src/test/java/org/neo4j/harness/junit/EnterpriseNeo4jRuleTest.java @@ -24,7 +24,9 @@ import org.junit.Test; import org.neo4j.harness.extensionpackage.MyEnterpriseUnmanagedExtension; +import org.neo4j.kernel.configuration.Settings; import org.neo4j.kernel.configuration.ssl.LegacySslPolicyConfig; +import org.neo4j.server.configuration.ServerSettings; import org.neo4j.test.rule.SuppressOutput; import org.neo4j.test.server.HTTP; @@ -39,6 +41,7 @@ public class EnterpriseNeo4jRuleTest public Neo4jRule neo4j = new EnterpriseNeo4jRule() .withConfig( LegacySslPolicyConfig.certificates_directory.name(), getRelativePath( getSharedTestTemporaryFolder(), LegacySslPolicyConfig.certificates_directory ) ) + .withConfig( ServerSettings.script_enabled, Settings.TRUE ) .withExtension( "/test", MyEnterpriseUnmanagedExtension.class ); @Rule