aboutsummaryrefslogtreecommitdiff
path: root/test/unit/test_c_api.cpp
diff options
context:
space:
mode:
authorJavier Jimenez Shaw <j1@jimenezshaw.com>2021-04-24 10:37:19 +0200
committerGitHub <noreply@github.com>2021-04-24 10:37:19 +0200
commit93dc8422c4cddf5fa52824222143effa6bb4d67f (patch)
tree53f8aba4764a68887e50e6d59fa2ec7162b93144 /test/unit/test_c_api.cpp
parenta002a3e9da175228494faca7219bce4e7e9effe6 (diff)
downloadPROJ-93dc8422c4cddf5fa52824222143effa6bb4d67f.tar.gz
PROJ-93dc8422c4cddf5fa52824222143effa6bb4d67f.zip
Add proj_get_geoid_models_from_database() (#2681)
to list all geoid model names that apply to a vertical CRS
Diffstat (limited to 'test/unit/test_c_api.cpp')
-rw-r--r--test/unit/test_c_api.cpp20
1 files changed, 20 insertions, 0 deletions
diff --git a/test/unit/test_c_api.cpp b/test/unit/test_c_api.cpp
index 8fa1b228..dfc92139 100644
--- a/test/unit/test_c_api.cpp
+++ b/test/unit/test_c_api.cpp
@@ -5619,5 +5619,25 @@ TEST_F(CApi, proj_get_insert_statements) {
proj_insert_object_session_destroy(m_ctxt, session);
}
}
+// ---------------------------------------------------------------------------
+
+TEST_F(CApi, proj_get_geoid_models_from_database) {
+ auto findInList = [](PROJ_STRING_LIST list, const std::string &ref) {
+ while (list && *list) {
+ if (std::string(*list) == ref) {
+ return true;
+ }
+ list++;
+ }
+ return false;
+ };
+
+ auto list =
+ proj_get_geoid_models_from_database(m_ctxt, "EPSG", "5703", nullptr);
+ ListFreer freer(list);
+ EXPECT_TRUE(findInList(list, "GEOID12B"));
+ EXPECT_TRUE(findInList(list, "GEOID18"));
+ EXPECT_FALSE(findInList(list, "OSGM15"));
+}
} // namespace