From 6512ef2427ed6b303ae1c03b91907020cb5366d8 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Fri, 6 Mar 2020 14:11:31 +0100 Subject: WKT import/export: add support for WKT1_ESRI VERTCS syntax --- test/unit/test_crs.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'test/unit/test_crs.cpp') 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(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"); -- cgit v1.2.3