aboutsummaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2018-06-08Export proj target to scope visible for test/unit targetMateusz Loskot
Refines #1034
2018-06-07Add CMake configuration for test/googletest and test/unitMateusz Loskot
For CMake builds, latest googletest 1.8.0 is downloaded. Following officially recommended integration for CMake-enabled projects https://github.com/google/googletest/blob/master/googletest/README.md "Use CMake to download GoogleTest as part of the build's configure step. This is just a little more complex, but doesn't have the limitations of the other methods." Since, our copy of test/googletest - is a very minimalist copy of googletest - does not include any official CMake scripts - would require copying parts of googletest CMakeLists.txt, compilater/linker flags (e.g. -lpthreads) for reliable multi-platform builds, it is reasoanable to rely on download All pros and cons advantages are discussed in teh README.md linked above. Closes #1033
2018-06-07Add googletest 1.8.0 framework in test/googletest, and use it with autoconf ↵Even Rouault
builds only (CMake integration to be done)
2018-06-06Correct bad use of proj_dmstor in gie.Kristian Evers
The previous commits were added way to prematurely. The code was not properly tested and it turned out to do more bad than good. This commit hopefully fixes that. And this time it is backed up by tests! DMS style coordinates should now be fully functional in gie. Finger crossed.
2018-06-04appveyor.yml: run ctest on cmake buildsEven Rouault
2018-06-02use shortened URL from StackExchange websitesMike Toews
2018-06-02Upgrade http:// to https:// where feasibleMike Toews
2018-06-01Do not pivot over WGS84 when doing cs2cs-emulation with geocentKristian Evers
2018-06-01Ignore failure to load test_nodata.gtx gridKristian Evers
2018-05-30Move catch.hpp header in test/; rename test/cpp as test/unitEven Rouault
2018-05-30Enable c++ compilation with autotools and cmake, hardened compilation flags ↵Even Rouault
and add catch2 framework Hardened compilation flags come from GDAL' configure.ac and are 'combat proven' Dummy test added just to demonstrate catch2 based tests work.
2018-05-24Temporal gridshifting (#1015)Kristian Evers
Temporal gridshifts allow [h|v]gridshift operations to be used as step functions in a pipeline. This is useful in transformations dealing with deformations caused by earthquakes. See the included documentation for details.
2018-05-19Vertical grid shift: do not interpolate node values at nodata value (fixes ↵Even Rouault
#1002)
2018-05-07Add tests for calcofi before refactoringKristian Evers
2018-04-15Update +proj=aeqd +guam test case with data from EPSG Note 7-2Kristian Evers
2018-04-13Fix segfault in deformationKristian Evers
When transforming coordinates outside the grid model the deformation operation failed spectatularly. This is now fixed by checking that the coordinate is inside the grid. If it isn't an error is returned and a debugging log message is issued. Closes #934
2018-04-11Add more tests for nsperKristian Evers
2018-04-11Merge pull request #927 from kbevers/laea-test-coverageKristian Evers
Add more tests for laea
2018-04-11Add more tests for laeaKristian Evers
2018-04-10Merge pull request #926 from kbevers/airy-updatesKristian Evers
Airy updates
2018-04-09Add more test cases for airy projectionKristian Evers
2018-04-09Add webmerc projectionEven Rouault
2018-04-02Add test cases for aeqd projectionKristian Evers
2018-04-01Add tests extra test cases for the gnomonic projectionKristian Evers
2018-03-30Add test cases from Snyder for the Orthographic projectionKristian Evers
2018-03-27Validate that units match between pipeline stepsKristian Evers
As suggested in [0], steps in a pipeline are now checked for compliance. If the right side units in step n differ from the left side units in step n+1 the pipeline can't be constructed and an error is raised. [0] https://lists.osgeo.org/pipermail/grass-dev/2018-March/088123.html
2018-03-21Take into account +towgs84=0,0,0 in pipeline to still imply ↵Even Rouault
geodetic->cartesian->geodetic (fixes #881)
2018-03-20Introduce late expansion of +datum parameters. Fixes #872.Kristian Evers
2018-03-11Merge branch 'master' into return-error-instead-of-zerosKristian Evers
2018-03-11Make sure that transient errors are returned correctlyKristian Evers
The prepare/finalize steps in pj_fwd*/pj_inv* now checks the error level of the PJ object before returning the coordinate. If an error is detected proj_coord_error() is returned.
2018-03-11Add Web Mercator test caseKristian Evers
2018-03-02Add test cases for omerc with +no_rot and tpers with +tilt.Adam Wulkiewicz
2018-02-23Download BETA2007 grid from proj-datumgrid package in CI scripts.Kristian Evers
Following PR #806 which removed various grids from nad/, we now have to download the BETA2007 grid before that DHDN_ETRS89 test can pass successfully.
2018-02-14revert tolerances for chamb and vandg2 to previous valuesKristian Evers
2018-02-12Rename gie_failing to work around MS wildcard bug (#799)Thomas Knudsen
For reasons unknown to anyone but the geniuses from Redmond: In MSWindows, the wildcard pattern "*.gie" expands to all files having an extension *starting* with ".gie". In other words "dir *.gie" will list files with extension ".gie" *and* with extension ".gie_failing". This means that running "gie test\gigs\*.gie" will run all gigs tests, even the ones known to fail. So rather than getting a quick check for regressions, one gets a lot of noise and no easy way to be sure whether any regressions have appeared. To work around this oddity, we rename all files ending in ".gie_failing" to end in ".gie.failing" - and while at it, adding all the non-failing gigs tests to the AppVeyor test suite. This extends the regression test suite, run at the end of each AppVeyor integration, to over 2500 individual tests. Test coverage, however, is still hovering just below 75%, so there's still plenty of room and reason for additional tests.
2018-02-12Ensure cs2cs emulation gets correct ellipsoid defn (#798)Thomas Knudsen
Copy ellipsoid definition for proj=cart directly into the proj_create call, rather than calling pj_inherit_ellipsoid_def afterwards. Previously, the ellipsoid definition was left out from the call. pj_init_ctx would then pick up WGS84 from proj_def.dat, and the init would succeed (and the possibly wrong ellipsoid definition would later on be overwritten with the correct values by pj_inherit_ellipsoid_def. But if PROJ_LIB was not set or proj_def.dat was inaccessible for other reasons, things went wrong.
2018-02-12Avoid invalid ellps error messages from pj_init (#794)Thomas Knudsen
Reset error type PJD_ERR_MAJOR_AXIS_NOT_GIVEN for operations that do not need an ellipsoid.
2018-02-10Update a few gie testsThomas Knudsen
2018-02-10Relax tolerance slightly for two tests failing on OS/XThomas Knudsen
2018-02-10Handle sign convention for vertical datum shiftsThomas Knudsen
Also make corresponding sign corrections in a number of tests, and comment out a few tests which work correctly, but report failure since gie is not yet ready to handle unusual axis orders in cases with angular output coordinates.
2018-02-10update gie tests to agree with improved gie distance handlingThomas Knudsen
2018-02-09Relaxing tolerances in a few tests to fix #778.Kristian Evers
2018-02-06Use PROJ_LIB explicitly for gie tests and if it is not set change it to nad/Kristian Evers
2018-02-06Skip gie tests that require gridsKristian Evers
2018-02-05Make gie tests in autoconf setup more granular.Kristian Evers
2018-02-05Add EPSG definitions to failing gigs test 5108.gie_failingThomas Knudsen
2018-02-02Remove GIGS Python test suite.Kristian Evers
All the GIGS JSON files have been converted to the gie format and are now covered by running "make check". Therefore we no longer need the Python setup. Removing it from the Travis CI setup should speed up the test execution time a bit.
2018-02-02Improve tests and add test files to automake setup.Kristian Evers
Make sure that the gie files in test/gie and test/gigs are included in the distribution tarball. Tests with gie are set up to run all available files matching *.gie in the gie and gigs directories. For this reason tests that are known to fail in gigs/ have been renamed to *.gie_failing, so that "make check" can be run in-tree in local copies of the git repository.
2018-01-31Test material for the cs2cs emulation in the 4D API.Kristian Evers
The GIGS tests that are known to work are added to the CMake test setup. The GIGS gie files have been auto-translated from the existing json-files and some corrections to tolerances have been necessary since gie uses different norms than GIGS specify. The GIGS tolerances are specified as the infinity norm of angular coordinates, whereas gie uses the actual distances between calculated and expected coordinates (using geodesics). In a few tests +towgs84 is overriden from the EPSG inits to avoid creeping numerical inaccuracy in roundtrips. Co-authored-by: Thomas Knudsen <thokn@sdfe.dk> Co-authored-by: Kristian Evers <kristianevers@gmail.com>
2018-01-31Introduce compatibility for cs2cs-style proj-strings into the 4D API.Thomas Knudsen
Parameters such as towgs84, nadgrids and geoidgrids was previously only handled by pj_transform(). This commit add a compatibility layer in proj_create() by calling the pj_cs2cs_emulation_setup() function. This function sets up a handful of predefined transformation objects on the PJ object that is being created. Each of these transformation objects are related to the cs2cs-style parameters we are trying to emulate in the 4D API. That is, if the +towgs84 parameters is used we create P->helmert with the parameters specified in +towgs84. Similarly for +axis, +nadgrids and +geoidgrids. When these transformation objects exists we use them in the prepare and finalize functions in pj_fwd/ pj_inv. If no cs2cs-style parametes are specified we skip those parts of the prepare and finalizing steps. Co-authored-by:Thomas Knudsen <thokn@sdfe.dk> Co-authored-by:Kristian Evers <kristianevers@gmail.com>