This is an automated email from the ASF dual-hosted git repository.
desruisseaux pushed a commit to branch geoapi-4.0
in repository https://gitbox.apache.org/repos/asf/sis.git
The following commit(s) were added to refs/heads/geoapi-4.0 by this push:
new 9b45753 Make the GPX tests more robust to coexistance of ESRI and JTS
librairies on the classpath.
9b45753 is described below
commit 9b45753c23a318b393e4c1f0f136d36eb375086d
Author: Martin Desruisseaux <[email protected]>
AuthorDate: Mon Jan 10 02:48:53 2022 +0100
Make the GPX tests more robust to coexistance of ESRI and JTS librairies on
the classpath.
---
.../sis/internal/storage/xml/stream/StaxDataStore.java | 10 +++++-----
.../org/apache/sis/internal/storage/gpx/ReaderTest.java | 8 ++++++--
.../org/apache/sis/internal/storage/gpx/WriterTest.java | 17 +++++++++++------
3 files changed, 22 insertions(+), 13 deletions(-)
diff --git
a/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java
b/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java
index 4c2295c..20ee0ca 100644
---
a/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java
+++
b/storage/sis-xmlstore/src/main/java/org/apache/sis/internal/storage/xml/stream/StaxDataStore.java
@@ -229,7 +229,7 @@ public abstract class StaxDataStore extends URIDataStore {
if (stream == null && storage instanceof AutoCloseable) {
stream = (AutoCloseable) storage;
}
- channelFactory = connector.getStorageAs(ChannelFactory.class); //
Must be last before 'closeAllExcept'.
+ channelFactory = connector.getStorageAs(ChannelFactory.class); //
Must be last before `closeAllExcept(…)`.
connector.closeAllExcept(stream);
/*
* If possible, remember the position where data begin in the stream
in order to allow reading
@@ -329,7 +329,7 @@ public abstract class StaxDataStore extends URIDataStore {
public void report(String message, String errorType, Object info,
Location location) {
final LogRecord record = new LogRecord(Level.WARNING, message);
record.setSourceClassName(StaxDataStore.this.getClass().getCanonicalName());
- // record.setLoggerName(…) will be invoked by 'listeners' with
inferred name.
+ // record.setLoggerName(…) will be invoked by `listeners` with
inferred name.
listeners.warning(record);
}
@@ -340,7 +340,7 @@ public abstract class StaxDataStore extends URIDataStore {
*/
@Override
public boolean isLoggable(final LogRecord warning) {
- warning.setLoggerName(null); // For allowing 'listeners' to
select a logger name.
+ warning.setLoggerName(null); // For allowing `listeners` to
select a logger name.
listeners.warning(warning);
return false;
}
@@ -439,7 +439,7 @@ public abstract class StaxDataStore extends URIDataStore {
case FINISHED: {
if (reset()) break; // If we can reuse existing stream,
nothing more to do.
if (input != null) {
- stream = null; // Cleared first in case of error
during 'close()' call.
+ stream = null; // Cleared first in case of error
during `close()` call.
input.close();
input = null;
}
@@ -449,7 +449,7 @@ public abstract class StaxDataStore extends URIDataStore {
/*
* If the input stream is in use, or if we finished to use it
but were unable to reset its position,
* then we need to create a new input stream (except if the
input was a DOM in memory, which we can
- * share). The 'target' StaxStreamReader will be in charge of
closing that stream.
+ * share). The `target` StaxStreamReader will be in charge of
closing that stream.
*/
if (type != InputType.NODE) {
final String name = getDisplayName();
diff --git
a/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/ReaderTest.java
b/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/ReaderTest.java
index b477697..e53176b 100644
---
a/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/ReaderTest.java
+++
b/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/ReaderTest.java
@@ -25,6 +25,7 @@ import com.esri.core.geometry.Point;
import com.esri.core.geometry.Polyline;
import org.opengis.geometry.Envelope;
import org.opengis.metadata.content.FeatureCatalogueDescription;
+import org.apache.sis.setup.GeometryLibrary;
import org.apache.sis.setup.OptionKey;
import org.apache.sis.storage.gps.Fix;
import org.apache.sis.storage.StorageConnector;
@@ -51,7 +52,7 @@ import org.opengis.metadata.content.FeatureTypeInfo;
*
* @author Johann Sorel (Geomatys)
* @author Martin Desruisseaux (Geomatys)
- * @version 0.8
+ * @version 1.2
* @since 0.8
* @module
*/
@@ -84,7 +85,9 @@ public final strictfp class ReaderTest extends TestCase {
* @param resource name of the test file in a directory relative to
{@code "org/apache/sis/internal/gpx"}.
*/
private static Store create(final String resource) throws
DataStoreException {
- return new Store(provider, new
StorageConnector(ReaderTest.class.getResourceAsStream(resource)));
+ final StorageConnector connector = new
StorageConnector(ReaderTest.class.getResourceAsStream(resource));
+ connector.setOption(OptionKey.GEOMETRY_LIBRARY, GeometryLibrary.ESRI);
+ return new Store(provider, connector);
}
/**
@@ -567,6 +570,7 @@ public final strictfp class ReaderTest extends TestCase {
*/
private static Store createFromURL() throws DataStoreException {
final StorageConnector connector = new
StorageConnector(ReaderTest.class.getResource("1.1/route.xml"));
+ connector.setOption(OptionKey.GEOMETRY_LIBRARY, GeometryLibrary.ESRI);
connector.setOption(OptionKey.URL_ENCODING, "UTF-8");
return new Store(provider, connector);
}
diff --git
a/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/WriterTest.java
b/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/WriterTest.java
index 926458f..ae66a25 100644
---
a/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/WriterTest.java
+++
b/storage/sis-xmlstore/src/test/java/org/apache/sis/internal/storage/gpx/WriterTest.java
@@ -24,6 +24,8 @@ import java.io.UncheckedIOException;
import java.io.ByteArrayOutputStream;
import java.io.UnsupportedEncodingException;
import com.esri.core.geometry.Point;
+import org.apache.sis.setup.GeometryLibrary;
+import org.apache.sis.setup.OptionKey;
import org.apache.sis.storage.gps.Fix;
import org.apache.sis.storage.DataStoreException;
import org.apache.sis.storage.StorageConnector;
@@ -49,7 +51,7 @@ import org.opengis.feature.Feature;
*
* @author Johann Sorel (Geomatys)
* @author Martin Desruisseaux (Geomatys)
- * @version 0.8
+ * @version 1.2
* @since 0.8
* @module
*/
@@ -85,7 +87,9 @@ public final strictfp class WriterTest extends TestCase {
* Creates a new GPX data store which will read and write in memory.
*/
private Store create() throws DataStoreException {
- return new Store(provider, new StorageConnector(output));
+ final StorageConnector connector = new StorageConnector(output);
+ connector.setOption(OptionKey.GEOMETRY_LIBRARY, GeometryLibrary.ESRI);
+ return new Store(provider, connector);
}
/**
@@ -244,7 +248,7 @@ public final strictfp class WriterTest extends TestCase {
* @param type the kind of feature to write: way point, route or track.
*/
private void testFeatures(final Store store, final Type type) throws
Exception {
- final Types types = Types.DEFAULT;
+ final Types types = store.types;
/*
* Way Points as defined in "waypoint.xml" test file.
* Appear also in "route.xml" and "track.xml" files.
@@ -363,9 +367,10 @@ public final strictfp class WriterTest extends TestCase {
@Test
@DependsOnMethod("testRoutes110")
public void testInputReplacement() throws Exception {
- try (Store store = new Store(provider, new StorageConnector(
- TestUtilities.createTemporaryFile(ReaderTest.class,
"1.1/metadata.xml"))))
- {
+ final StorageConnector connector = new StorageConnector(
+ TestUtilities.createTemporaryFile(ReaderTest.class,
"1.1/metadata.xml"));
+ connector.setOption(OptionKey.GEOMETRY_LIBRARY, GeometryLibrary.ESRI);
+ try (Store store = new Store(provider, connector)) {
/*
* Read part of the file. We verify its content as a matter of
principle,
* but the main purpose of following code is to advance in the
stream.