diff options
| author | Even Rouault <even.rouault@spatialys.com> | 2018-12-04 14:46:41 +0100 |
|---|---|---|
| committer | Even Rouault <even.rouault@spatialys.com> | 2018-12-04 14:46:41 +0100 |
| commit | d06c1c55c1c3fc7209abdbdfbf2e3cf34f18cf98 (patch) | |
| tree | 98fe336a41f1397280ee665d08040339967d711b /test/unit/test_io.cpp | |
| parent | addf30e4446fd39891fd5bdcb22413ed41e0913b (diff) | |
| download | PROJ-d06c1c55c1c3fc7209abdbdfbf2e3cf34f18cf98.tar.gz PROJ-d06c1c55c1c3fc7209abdbdfbf2e3cf34f18cf98.zip | |
Improve recognition of WKT1 datum names
Diffstat (limited to 'test/unit/test_io.cpp')
| -rw-r--r-- | test/unit/test_io.cpp | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/test/unit/test_io.cpp b/test/unit/test_io.cpp index 606d57a3..243add6f 100644 --- a/test/unit/test_io.cpp +++ b/test/unit/test_io.cpp @@ -460,6 +460,59 @@ TEST(wkt_parse, wkt1_EPSG_4807_grad_mess) { // --------------------------------------------------------------------------- +TEST(wkt_parse, wkt1_geographic_old_datum_name_from_EPSG_code) { + auto wkt = + "GEOGCS[\"S-JTSK (Ferro)\",\n" + " " + "DATUM[\"System_Jednotne_Trigonometricke_Site_Katastralni_Ferro\",\n" + " SPHEROID[\"Bessel 1841\",6377397.155,299.1528128,\n" + " AUTHORITY[\"EPSG\",\"7004\"]],\n" + " AUTHORITY[\"EPSG\",\"6818\"]],\n" + " PRIMEM[\"Ferro\",-17.66666666666667,\n" + " AUTHORITY[\"EPSG\",\"8909\"]],\n" + " UNIT[\"degree\",0.0174532925199433,\n" + " AUTHORITY[\"EPSG\",\"9122\"]],\n" + " AUTHORITY[\"EPSG\",\"4818\"]]"; + auto obj = WKTParser() + .attachDatabaseContext(DatabaseContext::create()) + .createFromWKT(wkt); + auto crs = nn_dynamic_pointer_cast<GeographicCRS>(obj); + ASSERT_TRUE(crs != nullptr); + + auto datum = crs->datum(); + EXPECT_EQ( + datum->nameStr(), + "System of the Unified Trigonometrical Cadastral Network (Ferro)"); +} + +// --------------------------------------------------------------------------- + +TEST(wkt_parse, wkt1_geographic_old_datum_name_witout_EPSG_code) { + auto wkt = + "GEOGCS[\"S-JTSK (Ferro)\",\n" + " " + "DATUM[\"System_Jednotne_Trigonometricke_Site_Katastralni_Ferro\",\n" + " SPHEROID[\"Bessel 1841\",6377397.155,299.1528128,\n" + " AUTHORITY[\"EPSG\",\"7004\"]]],\n" + " PRIMEM[\"Ferro\",-17.66666666666667,\n" + " AUTHORITY[\"EPSG\",\"8909\"]],\n" + " UNIT[\"degree\",0.0174532925199433,\n" + " AUTHORITY[\"EPSG\",\"9122\"]],\n" + " AUTHORITY[\"EPSG\",\"4818\"]]"; + auto obj = WKTParser() + .attachDatabaseContext(DatabaseContext::create()) + .createFromWKT(wkt); + auto crs = nn_dynamic_pointer_cast<GeographicCRS>(obj); + ASSERT_TRUE(crs != nullptr); + + auto datum = crs->datum(); + EXPECT_EQ( + datum->nameStr(), + "System of the Unified Trigonometrical Cadastral Network (Ferro)"); +} + +// --------------------------------------------------------------------------- + static std::string contentWKT2_EPSG_4326( "[\"WGS 84\",\n" " DATUM[\"World Geodetic System 1984\",\n" |
