From 6695c75bf5f434cd782823351f91f63eb115d7c0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 19 Feb 2020 17:13:40 +0000 Subject: validateParameters(): fix false-positive warning on Equidistant Cylindrical --- src/iso19111/coordinateoperation.cpp | 8 ++++++++ test/unit/test_operation.cpp | 4 ++++ 2 files changed, 12 insertions(+) diff --git a/src/iso19111/coordinateoperation.cpp b/src/iso19111/coordinateoperation.cpp index 53fa64bf..f429c328 100644 --- a/src/iso19111/coordinateoperation.cpp +++ b/src/iso19111/coordinateoperation.cpp @@ -2129,6 +2129,14 @@ std::list SingleOperation::validateParameters() const { } if (!opv) { + if ((methodEPSGCode == EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL || + methodEPSGCode == + EPSG_CODE_METHOD_EQUIDISTANT_CYLINDRICAL_SPHERICAL) && + paramMapping == ¶mLatitudeNatOrigin) { + // extension of EPSG used by GDAL/PROJ, so we should not + // warn on its absence. + continue; + } std::string msg("Cannot find expected parameter "); msg += paramMapping->wkt2_name; res.emplace_back(msg); diff --git a/test/unit/test_operation.cpp b/test/unit/test_operation.cpp index d4d1768e..30d52806 100644 --- a/test/unit/test_operation.cpp +++ b/test/unit/test_operation.cpp @@ -2090,6 +2090,8 @@ TEST(operation, createEquidistantCylindrical) { "PARAMETER[\"central_meridian\",2],\n" "PARAMETER[\"false_easting\",3],\n" "PARAMETER[\"false_northing\",4]"); + + EXPECT_TRUE(conv->validateParameters().empty()); } // --------------------------------------------------------------------------- @@ -2127,6 +2129,8 @@ TEST(operation, createEquidistantCylindricalSpherical) { "PARAMETER[\"central_meridian\",2],\n" "PARAMETER[\"false_easting\",3],\n" "PARAMETER[\"false_northing\",4]"); + + EXPECT_TRUE(conv->validateParameters().empty()); } // --------------------------------------------------------------------------- -- cgit v1.2.3