aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_io.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2021-04-10 17:15:51 +0200
committerEven Rouault <even.rouault@spatialys.com>2021-04-10 19:17:39 +0200
commit76d8cb9dafd274df537b87be068db282af8d17d7 (patch)
treee3c8b70e5de90542696f9f42a880d7065e8f657b /test/unit/test_io.cpp
parent35a9ffc2d147c04c3a58c48f16d7c748271e5003 (diff)
downloadPROJ-76d8cb9dafd274df537b87be068db282af8d17d7.tar.gz
PROJ-76d8cb9dafd274df537b87be068db282af8d17d7.zip
createFromUserInput(): add support for (legacy) urn:opengis:crs:EPSG:0:XXXX syntax
Diffstat (limited to 'test/unit/test_io.cpp')
-rw-r--r--test/unit/test_io.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/test/unit/test_io.cpp b/test/unit/test_io.cpp
index 708b3874..7e81ae95 100644
--- a/test/unit/test_io.cpp
+++ b/test/unit/test_io.cpp
@@ -10349,6 +10349,8 @@ TEST(io, createFromUserInput) {
EXPECT_NO_THROW(createFromUserInput("epsg:4326", dbContext));
EXPECT_NO_THROW(
createFromUserInput("urn:ogc:def:crs:EPSG::4326", dbContext));
+ EXPECT_THROW(createFromUserInput("urn:ogc:def:crs:EPSG::4326", nullptr),
+ ParsingException);
EXPECT_NO_THROW(createFromUserInput(
"urn:ogc:def:coordinateOperation:EPSG::1671", dbContext));
EXPECT_NO_THROW(
@@ -10357,6 +10359,20 @@ TEST(io, createFromUserInput) {
createFromUserInput("urn:ogc:def:meridian:EPSG::8901", dbContext));
EXPECT_NO_THROW(
createFromUserInput("urn:ogc:def:ellipsoid:EPSG::7030", dbContext));
+
+ // Legacy formulations
+ EXPECT_NO_THROW(
+ createFromUserInput("urn:x-ogc:def:crs:EPSG::4326", dbContext));
+ EXPECT_NO_THROW(
+ createFromUserInput("urn:opengis:def:crs:EPSG::4326", dbContext));
+ EXPECT_NO_THROW(
+ createFromUserInput("urn:opengis:crs:EPSG::4326", dbContext));
+ EXPECT_THROW(createFromUserInput("urn:opengis:crs:EPSG::4326", nullptr),
+ ParsingException);
+ EXPECT_THROW(
+ createFromUserInput("urn:opengis:unhandled:EPSG::4326", dbContext),
+ ParsingException);
+
{
auto obj = createFromUserInput("EPSG:2393+5717", dbContext);
auto crs = nn_dynamic_pointer_cast<CompoundCRS>(obj);