aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_crs.cpp
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2020-05-15 11:58:17 +0200
committerGitHub <noreply@github.com>2020-05-15 11:58:17 +0200
commit330b2066244f77f89995a1aa195ef4323948a9b9 (patch)
tree9501bb3a670ce2a6ba8b8044ab256e5d8f28455d /test/unit/test_crs.cpp
parent6c5164eb49bdb6fcc9bf976db33c1b0a4bf5d7ad (diff)
parenta2f8fd1a21da1352a39cc56db2bb39613fc29091 (diff)
downloadPROJ-330b2066244f77f89995a1aa195ef4323948a9b9.tar.gz
PROJ-330b2066244f77f89995a1aa195ef4323948a9b9.zip
Merge pull request #2224 from rouault/fix_2202
Make projinfo --3d --boundcrs-to-wgs84 better work (fixes #2202)
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 c00556a7..cf285b0a 100644
--- a/test/unit/test_crs.cpp
+++ b/test/unit/test_crs.cpp
@@ -5794,6 +5794,21 @@ TEST(crs, promoteTo3D_and_demoteTo2D) {
nn_dynamic_pointer_cast<ProjectedCRS>(crs3DAsBound->baseCRS());
ASSERT_TRUE(baseCRS != nullptr);
EXPECT_EQ(baseCRS->coordinateSystem()->axisList().size(), 3U);
+
+ auto hubCRS =
+ nn_dynamic_pointer_cast<GeographicCRS>(crs3DAsBound->hubCRS());
+ ASSERT_TRUE(hubCRS != nullptr);
+ EXPECT_EQ(hubCRS->coordinateSystem()->axisList().size(), 3U);
+
+ auto transfSrcCRS = nn_dynamic_pointer_cast<GeographicCRS>(
+ crs3DAsBound->transformation()->sourceCRS());
+ ASSERT_TRUE(transfSrcCRS != nullptr);
+ EXPECT_EQ(transfSrcCRS->coordinateSystem()->axisList().size(), 3U);
+
+ auto transfDstCRS = nn_dynamic_pointer_cast<GeographicCRS>(
+ crs3DAsBound->transformation()->targetCRS());
+ ASSERT_TRUE(transfDstCRS != nullptr);
+ EXPECT_EQ(transfDstCRS->coordinateSystem()->axisList().size(), 3U);
}
auto demoted = crs3DAsBound->demoteTo2D(std::string(), nullptr);
@@ -5804,6 +5819,21 @@ TEST(crs, promoteTo3D_and_demoteTo2D) {
nn_dynamic_pointer_cast<ProjectedCRS>(crs2DAsBound->baseCRS());
ASSERT_TRUE(baseCRS != nullptr);
EXPECT_EQ(baseCRS->coordinateSystem()->axisList().size(), 2U);
+
+ auto hubCRS =
+ nn_dynamic_pointer_cast<GeographicCRS>(crs2DAsBound->hubCRS());
+ ASSERT_TRUE(hubCRS != nullptr);
+ EXPECT_EQ(hubCRS->coordinateSystem()->axisList().size(), 2U);
+
+ auto transfSrcCRS = nn_dynamic_pointer_cast<GeographicCRS>(
+ crs2DAsBound->transformation()->sourceCRS());
+ ASSERT_TRUE(transfSrcCRS != nullptr);
+ EXPECT_EQ(transfSrcCRS->coordinateSystem()->axisList().size(), 2U);
+
+ auto transfDstCRS = nn_dynamic_pointer_cast<GeographicCRS>(
+ crs2DAsBound->transformation()->targetCRS());
+ ASSERT_TRUE(transfDstCRS != nullptr);
+ EXPECT_EQ(transfDstCRS->coordinateSystem()->axisList().size(), 2U);
}
}