diff --git a/test/srs/projection_interface.cpp b/test/srs/projection_interface.cpp index 4e9c598bf..4dc247118 100644 --- a/test/srs/projection_interface.cpp +++ b/test/srs/projection_interface.cpp @@ -104,5 +104,42 @@ int test_main(int, char*[]) prj6 = static_proj4(ellps::WGS84(), ""); } + // compile-time errors + { + point_ll pt_ll(1, 1); + point_xy pt_xy(0, 0); + + //projection > prj1; + //projection prj2; + + projection > prj3; + //prj3.inverse(pt_xy, pt_ll); + } + + // run-time errors + { + point_ll pt_ll(1, 1); + point_xy pt_xy(0, 0); + + try { + projection<> prj1 = proj4(""); + } catch (exception & e) { + std::cerr << e.what() << std::endl; + } + + try { + projection<> prj2 = proj4("+proj=abcd"); + } catch (exception & e) { + std::cerr << e.what() << std::endl; + } + + try { + projection<> prj3 = proj4("+proj=bacon +a=6400000"); + prj3.inverse(pt_xy, pt_ll); + } catch (exception & e) { + std::cerr << e.what() << std::endl; + } + } + return 0; }