aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_crs.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-03-06 18:28:30 +0100
committerGitHub <noreply@github.com>2020-03-06 18:28:30 +0100
commit93da0bcaa0880b183b312e1ce7834c74357e5b0e (patch)
tree2d6f318b8f1700ebcb35dbfd7791c038d7b2a212 /test/unit/test_crs.cpp
parent2dbca196a0c73972a0cc70856a42f01765868145 (diff)
parent6512ef2427ed6b303ae1c03b91907020cb5366d8 (diff)
downloadPROJ-93da0bcaa0880b183b312e1ce7834c74357e5b0e.tar.gz
PROJ-93da0bcaa0880b183b312e1ce7834c74357e5b0e.zip
Merge pull request #2024 from rouault/add_support_for_WKT1_ESRI_VERTCS
WKT import/export: add support for WKT1_ESRI VERTCS syntax
Diffstat (limited to 'test/unit/test_crs.cpp')
-rw-r--r--test/unit/test_crs.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/test/unit/test_crs.cpp b/test/unit/test_crs.cpp
index c988080b..6ab60270 100644
--- a/test/unit/test_crs.cpp
+++ b/test/unit/test_crs.cpp
@@ -3157,6 +3157,36 @@ TEST(crs, verticalCRS_as_WKT1_GDAL) {
// ---------------------------------------------------------------------------
+TEST(crs, verticalCRS_as_WKT1_ESRI) {
+ auto crs = createVerticalCRS();
+ auto expected = "VERTCS[\"ODN height\",VDATUM[\"Ordnance Datum Newlyn\"],"
+ "PARAMETER[\"Vertical_Shift\",0.0],"
+ "PARAMETER[\"Direction\",1.0],"
+ "UNIT[\"Meter\",1.0]]";
+
+ EXPECT_EQ(
+ crs->exportToWKT(
+ WKTFormatter::create(WKTFormatter::Convention::WKT1_ESRI).get()),
+ expected);
+}
+// ---------------------------------------------------------------------------
+
+TEST(crs, verticalCRS_down_as_WKT1_ESRI) {
+ auto wkt = "VERTCS[\"Caspian\",VDATUM[\"Caspian_Sea\"],"
+ "PARAMETER[\"Vertical_Shift\",0.0],"
+ "PARAMETER[\"Direction\",-1.0],UNIT[\"Meter\",1.0]]";
+
+ auto obj = WKTParser().createFromWKT(wkt);
+ auto crs = nn_dynamic_pointer_cast<VerticalCRS>(obj);
+ ASSERT_TRUE(crs != nullptr);
+ EXPECT_EQ(
+ crs->exportToWKT(
+ WKTFormatter::create(WKTFormatter::Convention::WKT1_ESRI).get()),
+ wkt);
+}
+
+// ---------------------------------------------------------------------------
+
TEST(crs, verticalCRS_identify_db) {
auto dbContext = DatabaseContext::create();
auto factory = AuthorityFactory::create(dbContext, "EPSG");