This is an automated email from the ASF dual-hosted git repository. afs pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/jena.git
commit 38a237ed4deb7c295de3faf1aacc5a9a16889093 Author: Thomas Thelen <[email protected]> AuthorDate: Wed Aug 5 06:59:54 2026 -0700 GH-2340: jena-fuseki-geosparql: Run one server per unit test --- .../apache/jena/fuseki/geosparql/EmptyTest.java | 33 +++++++++++++--------- .../org/apache/jena/fuseki/geosparql/MainTest.java | 27 ++++++++++-------- .../org/apache/jena/fuseki/geosparql/TDB2Test.java | 27 ++++++++++-------- .../org/apache/jena/fuseki/geosparql/TDBTest.java | 27 ++++++++++-------- 4 files changed, 64 insertions(+), 50 deletions(-) diff --git a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/EmptyTest.java b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/EmptyTest.java index f29cffe57f..36326bfd49 100644 --- a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/EmptyTest.java +++ b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/EmptyTest.java @@ -28,11 +28,12 @@ import java.util.List; import com.beust.jcommander.JCommander; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.apache.jena.atlas.web.HttpException; +import org.apache.jena.atlas.web.WebLib; import org.apache.jena.fuseki.geosparql.cli.ArgsConfig; import org.apache.jena.geosparql.spatial.SpatialIndexException; import org.apache.jena.query.Dataset; @@ -48,11 +49,13 @@ import org.apache.jena.update.UpdateRequest; public class EmptyTest { - private static GeosparqlServer SERVER; + // A server per test, on a fresh port. + private GeosparqlServer server; - @BeforeAll - public static void setUpClass() throws DatasetException, SpatialIndexException { - String[] args = {"-u", "--port", "4049"}; + @BeforeEach + public void setUp() throws DatasetException, SpatialIndexException { + int port = WebLib.choosePort(); + String[] args = {"-u", "--port", Integer.toString(port)}; ArgsConfig argsConfig = new ArgsConfig(); JCommander.newBuilder() @@ -64,8 +67,8 @@ public class EmptyTest { Dataset dataset = DatasetOperations.setup(argsConfig); //Configure server - SERVER = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); - SERVER.start(); + server = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); + server.start(); //Add data String update = "PREFIX geo: <http://www.opengis.net/ont/geosparql#>\n" @@ -84,19 +87,21 @@ public class EmptyTest { Runnable r = ()->{ UpdateRequest updateRequest = UpdateFactory.create(update); - UpdateExecution updateProcessor = UpdateExecution.service(SERVER.getLocalServiceURL()).update(updateRequest).build(); + UpdateExecution updateProcessor = UpdateExecution.service(server.getLocalServiceURL()).update(updateRequest).build(); updateProcessor.execute(); } ; try { Helper.run(r); } catch (QueryExceptionHTTP | HttpException ex) { - SERVER.shutdown(); + server.shutdown(); } } - @AfterAll - public static void tearDownClass() { - SERVER.shutdown(); + @AfterEach + public void tearDown() { + try { + server.shutdown(); + } catch (Throwable th) {} } /** @@ -112,7 +117,7 @@ public class EmptyTest { + "}ORDER by ?obj"; Runnable r = ()->{ List<Resource> result = new ArrayList<>(); - try (QueryExecution qe = QueryExecution.service(SERVER.getLocalServiceURL()).query(query).build()) { + try (QueryExecution qe = QueryExecution.service(server.getLocalServiceURL()).query(query).build()) { ResultSet rs = qe.execSelect(); while (rs.hasNext()) { diff --git a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/MainTest.java b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/MainTest.java index 27e924494f..e0939f8f07 100644 --- a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/MainTest.java +++ b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/MainTest.java @@ -27,10 +27,11 @@ import java.util.List; import com.beust.jcommander.JCommander; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.apache.jena.atlas.web.WebLib; import org.apache.jena.fuseki.geosparql.cli.ArgsConfig; import org.apache.jena.geosparql.spatial.SpatialIndexException; import org.apache.jena.query.Dataset; @@ -45,11 +46,13 @@ public class MainTest { static { JenaSystem.init(); } - private static GeosparqlServer SERVER; + // A server per test, on a fresh port. + private GeosparqlServer server; - @BeforeAll - public static void setUpClass() throws DatasetException, SpatialIndexException { - String[] args = {"-rf", "geosparql_test.rdf>xml", "-i", "--port", "4048"}; + @BeforeEach + public void setUp() throws DatasetException, SpatialIndexException { + int port = WebLib.choosePort(); + String[] args = {"-rf", "geosparql_test.rdf>xml", "-i", "--port", Integer.toString(port)}; ArgsConfig argsConfig = new ArgsConfig(); JCommander.newBuilder() @@ -61,14 +64,14 @@ public class MainTest { Dataset dataset = DatasetOperations.setup(argsConfig); //Configure server - SERVER = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); - SERVER.start(); + server = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); + server.start(); } - @AfterAll - public static void tearDownClass() { + @AfterEach + public void tearDown() { try { - SERVER.shutdown(); + server.shutdown(); } catch (Throwable th) {} } @@ -87,7 +90,7 @@ public class MainTest { Runnable r = ()->{ List<Resource> result = new ArrayList<>(); - try (QueryExecution qe = QueryExecution.service(SERVER.getLocalServiceURL()).query(query).build()) { + try (QueryExecution qe = QueryExecution.service(server.getLocalServiceURL()).query(query).build()) { ResultSet rs = qe.execSelect(); while (rs.hasNext()) { diff --git a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDB2Test.java b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDB2Test.java index 3b00508b89..c77e420e0d 100644 --- a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDB2Test.java +++ b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDB2Test.java @@ -30,10 +30,11 @@ import java.util.List; import com.beust.jcommander.JCommander; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.apache.jena.atlas.web.WebLib; import org.apache.jena.fuseki.geosparql.cli.ArgsConfig; import org.apache.jena.geosparql.spatial.SpatialIndexException; import org.apache.jena.query.Dataset; @@ -45,12 +46,14 @@ import org.apache.jena.rdf.model.ResourceFactory; public class TDB2Test { - private static GeosparqlServer SERVER; + // A server per test, on a fresh port. + private GeosparqlServer server; - @BeforeAll - public static void setUpClass() throws DatasetException, SpatialIndexException, IOException { + @BeforeEach + public void setUp() throws DatasetException, SpatialIndexException, IOException { Path tempTDBDir = Files.createTempDirectory("geospoarql"); - String[] args = {"-rf", "geosparql_test.rdf>xml", "-i", "-t", tempTDBDir.toAbsolutePath().toString(), "-t2", "--port", "4047"}; + int port = WebLib.choosePort(); + String[] args = {"-rf", "geosparql_test.rdf>xml", "-i", "-t", tempTDBDir.toAbsolutePath().toString(), "-t2", "--port", Integer.toString(port)}; ArgsConfig argsConfig = new ArgsConfig(); JCommander.newBuilder() @@ -62,14 +65,14 @@ public class TDB2Test { Dataset dataset = DatasetOperations.setup(argsConfig); //Configure server - SERVER = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); - SERVER.start(); + server = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); + server.start(); } - @AfterAll - public static void tearDownClass() { + @AfterEach + public void tearDown() { try { - SERVER.shutdown(); + server.shutdown(); } catch (Throwable th) {} } @@ -88,7 +91,7 @@ public class TDB2Test { + "}ORDER by ?obj"; Runnable r = () -> { List<Resource> result = new ArrayList<>(); - try (QueryExecution qe = QueryExecution.service(SERVER.getLocalServiceURL()).query(query).build()) { + try (QueryExecution qe = QueryExecution.service(server.getLocalServiceURL()).query(query).build()) { ResultSet rs = qe.execSelect(); while (rs.hasNext()) { diff --git a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDBTest.java b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDBTest.java index 43814dbe04..95d09dbf23 100644 --- a/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDBTest.java +++ b/jena-fuseki2/jena-fuseki-geosparql/src/test/java/org/apache/jena/fuseki/geosparql/TDBTest.java @@ -30,10 +30,11 @@ import java.util.List; import com.beust.jcommander.JCommander; -import org.junit.jupiter.api.AfterAll; -import org.junit.jupiter.api.BeforeAll; +import org.junit.jupiter.api.AfterEach; +import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; +import org.apache.jena.atlas.web.WebLib; import org.apache.jena.fuseki.geosparql.cli.ArgsConfig; import org.apache.jena.geosparql.spatial.SpatialIndexException; import org.apache.jena.query.Dataset; @@ -45,12 +46,14 @@ import org.apache.jena.rdf.model.ResourceFactory; public class TDBTest { - private static GeosparqlServer SERVER; + // A server per test, on a fresh port. + private GeosparqlServer server; - @BeforeAll - public static void setUpClass() throws DatasetException, SpatialIndexException, IOException { + @BeforeEach + public void setUp() throws DatasetException, SpatialIndexException, IOException { Path tempTDBDir = Files.createTempDirectory("geospoarql"); - String[] args = {"-rf", "geosparql_test.rdf>xml", "-i", "-t", tempTDBDir.toAbsolutePath().toString(), "-t2", "--port", "4047"}; + int port = WebLib.choosePort(); + String[] args = {"-rf", "geosparql_test.rdf>xml", "-i", "-t", tempTDBDir.toAbsolutePath().toString(), "-t2", "--port", Integer.toString(port)}; ArgsConfig argsConfig = new ArgsConfig(); JCommander.newBuilder() @@ -62,14 +65,14 @@ public class TDBTest { Dataset dataset = DatasetOperations.setup(argsConfig); //Configure server - SERVER = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); - SERVER.start(); + server = new GeosparqlServer(argsConfig.getPort(), argsConfig.getDatsetName(), argsConfig.isLoopbackOnly(), dataset, argsConfig.isUpdateAllowed()); + server.start(); } - @AfterAll - public static void tearDownClass() { + @AfterEach + public void tearDown() { try { - SERVER.shutdown(); + server.shutdown(); } catch (Throwable th) {} } @@ -87,7 +90,7 @@ public class TDBTest { + " <http://example.org/Geometry#PolygonH> geo:sfContains ?obj .\n" + "}ORDER by ?obj"; List<Resource> result = new ArrayList<>(); - try (QueryExecution qe = QueryExecution.service(SERVER.getLocalServiceURL()).query(query).build()) { + try (QueryExecution qe = QueryExecution.service(server.getLocalServiceURL()).query(query).build()) { ResultSet rs = qe.execSelect(); while (rs.hasNext()) {
