diff options
Diffstat (limited to 'test/unit')
| -rw-r--r-- | test/unit/test_c_api.cpp | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/test/unit/test_c_api.cpp b/test/unit/test_c_api.cpp index a1918fb7..0ef78d87 100644 --- a/test/unit/test_c_api.cpp +++ b/test/unit/test_c_api.cpp @@ -714,6 +714,34 @@ TEST_F(CApi, proj_get_type) { EXPECT_EQ(proj_get_type(obj), PJ_TYPE_VERTICAL_CRS); } { + auto wkt = "TDATUM[\"Gregorian calendar\",\n" + " CALENDAR[\"proleptic Gregorian\"],\n" + " TIMEORIGIN[0000-01-01]]"; + + auto datum = proj_create_from_wkt( + m_ctxt, wkt, + nullptr, nullptr, nullptr); + ObjectKeeper keeper(datum); + ASSERT_NE(datum, nullptr); + EXPECT_EQ(proj_get_type(datum), PJ_TYPE_TEMPORAL_DATUM); + } + { + auto wkt = "ENGINEERINGDATUM[\"Engineering datum\"]"; + auto datum = proj_create_from_wkt( + m_ctxt, wkt, + nullptr, nullptr, nullptr); + ObjectKeeper keeper(datum); + EXPECT_EQ(proj_get_type(datum), PJ_TYPE_ENGINEERING_DATUM); + } + { + auto wkt = "PDATUM[\"Mean Sea Level\",ANCHOR[\"1013.25 hPa at 15°C\"]]"; + auto datum = proj_create_from_wkt( + m_ctxt, wkt, + nullptr, nullptr, nullptr); + ObjectKeeper keeper(datum); + EXPECT_EQ(proj_get_type(datum), PJ_TYPE_PARAMETRIC_DATUM); + } + { auto obj = proj_create_from_wkt( m_ctxt, createVerticalCRS() ->datum() @@ -1132,6 +1160,9 @@ TEST_F(CApi, proj_get_codes_from_database) { PJ_TYPE_VERTICAL_REFERENCE_FRAME, PJ_TYPE_DYNAMIC_VERTICAL_REFERENCE_FRAME, PJ_TYPE_DATUM_ENSEMBLE, + PJ_TYPE_TEMPORAL_DATUM, + PJ_TYPE_ENGINEERING_DATUM, + PJ_TYPE_PARAMETRIC_DATUM, PJ_TYPE_CRS, PJ_TYPE_GEODETIC_CRS, @@ -1156,7 +1187,8 @@ TEST_F(CApi, proj_get_codes_from_database) { auto list = proj_get_codes_from_database(m_ctxt, "EPSG", type, true); ListFreer feer(list); if (type == PJ_TYPE_TEMPORAL_CRS || type == PJ_TYPE_BOUND_CRS || - type == PJ_TYPE_UNKNOWN) { + type == PJ_TYPE_UNKNOWN || type == PJ_TYPE_TEMPORAL_DATUM || + type == PJ_TYPE_ENGINEERING_DATUM || type == PJ_TYPE_PARAMETRIC_DATUM) { EXPECT_EQ(list, nullptr) << type; } else { ASSERT_NE(list, nullptr) << type; |
