aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_io.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2019-11-04 14:58:24 +0100
committerEven Rouault <even.rouault@spatialys.com>2019-11-04 14:58:24 +0100
commitc975c6d13f5c0c13c57834c15ecd265a9d91a705 (patch)
tree556baa55635a44b21e83366d9e92254f3cce0b23 /test/unit/test_io.cpp
parentcff22050faa67017eb4c5b44cb383b265c07d156 (diff)
parent90c1166e316cc95296cd6db3ab1fc81243310de6 (diff)
downloadPROJ-c975c6d13f5c0c13c57834c15ecd265a9d91a705.tar.gz
PROJ-c975c6d13f5c0c13c57834c15ecd265a9d91a705.zip
Merge remote-tracking branch 'origin/master' into geoid_model
Diffstat (limited to 'test/unit/test_io.cpp')
-rw-r--r--test/unit/test_io.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/test/unit/test_io.cpp b/test/unit/test_io.cpp
index 79851695..a71b63bb 100644
--- a/test/unit/test_io.cpp
+++ b/test/unit/test_io.cpp
@@ -1174,6 +1174,40 @@ TEST(wkt_parse, wkt1_Mercator_1SP_with_latitude_origin_0) {
// ---------------------------------------------------------------------------
+TEST(wkt_parse, wkt1_Mercator_1SP_without_scale_factor) {
+ // See https://github.com/OSGeo/PROJ/issues/1700
+ auto wkt = "PROJCS[\"unnamed\",\n"
+ " GEOGCS[\"WGS 84\",\n"
+ " DATUM[\"unknown\",\n"
+ " SPHEROID[\"WGS84\",6378137,298.257223563]],\n"
+ " PRIMEM[\"Greenwich\",0],\n"
+ " UNIT[\"degree\",0.0174532925199433]],\n"
+ " PROJECTION[\"Mercator_1SP\"],\n"
+ " PARAMETER[\"central_meridian\",0],\n"
+ " PARAMETER[\"false_easting\",0],\n"
+ " PARAMETER[\"false_northing\",0],\n"
+ " UNIT[\"Meter\",1],\n"
+ " AXIS[\"Easting\",EAST],\n"
+ " AXIS[\"Northing\",NORTH]]";
+ WKTParser parser;
+ parser.setStrict(false).attachDatabaseContext(DatabaseContext::create());
+ auto obj = parser.createFromWKT(wkt);
+ EXPECT_TRUE(!parser.warningList().empty());
+
+ auto crs = nn_dynamic_pointer_cast<ProjectedCRS>(obj);
+ ASSERT_TRUE(crs != nullptr);
+ auto got_wkt = crs->exportToWKT(
+ WKTFormatter::create(WKTFormatter::Convention::WKT1_GDAL).get());
+ EXPECT_TRUE(got_wkt.find("PARAMETER[\"scale_factor\",1]") !=
+ std::string::npos)
+ << got_wkt;
+ EXPECT_EQ(crs->exportToPROJString(PROJStringFormatter::create().get()),
+ "+proj=merc +lon_0=0 +k=1 +x_0=0 +y_0=0 +ellps=WGS84 +units=m "
+ "+no_defs +type=crs");
+}
+
+// ---------------------------------------------------------------------------
+
TEST(wkt_parse, wkt1_krovak_south_west) {
auto wkt =
"PROJCS[\"S-JTSK / Krovak\","