aboutsummaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorThomas Knudsen <busstoptaktik@users.noreply.github.com>2017-12-17 18:04:13 +0100
committerGitHub <noreply@github.com>2017-12-17 18:04:13 +0100
commit74ae4b09bbc80edb44a123a8272014d15b7d4b8d (patch)
tree066537112cdc8624136049fade9d61d0ca9ad8b8 /test
parent533207012bfd2c5de652b9df8b2104cad82b6988 (diff)
downloadPROJ-74ae4b09bbc80edb44a123a8272014d15b7d4b8d.tar.gz
PROJ-74ae4b09bbc80edb44a123a8272014d15b7d4b8d.zip
Free format everywhere (#693)
* Free format now in cmd lines, in gie, and in init files * Corrected handling of defaults * Add demo of integrated definition and validation * Repair stack-smashing memmove in get_init * repair paralist corruption, clean up debug output * Install test files for nmake builds * Add many improvements following suggestions by @schwehr * Be consistent in requiring lower case everywhere in gie.c Also, this Fixes #703 and Fixes #697
Diffstat (limited to 'test')
-rw-r--r--test/gie/GDA.gie50
-rw-r--r--test/gie/axisswap.gie118
-rw-r--r--test/gie/builtins.gie7
-rw-r--r--test/gie/deformation.gie27
-rw-r--r--test/gie/ellipsoid.gie7
-rw-r--r--test/gie/more_builtins.gie92
-rw-r--r--test/gie/pip.gie41
7 files changed, 205 insertions, 137 deletions
diff --git a/test/gie/GDA.gie b/test/gie/GDA.gie
index 423443a6..b77ca934 100644
--- a/test/gie/GDA.gie
+++ b/test/gie/GDA.gie
@@ -13,58 +13,64 @@ Which is distributed under Creative Commons CC-BY 4.0
These tests will probably be useful as a template for an AU setup file, defining
transformations for Australian systems, but I'm reluctant to provide such a file
-directly - I believe it should come from official AU sources.
+myself - it probably should come from official AU sources.
Thomas Knudsen, thokn@sdfe.dk, 2017-11-27
-----------------------------------------------------------------------------------
<gie>
+
-----------------------------------------------------------------------------------
GDA94 to GDA2020
-----------------------------------------------------------------------------------
Just the Helmert transformation, to verify that we are within 100 um
-----------------------------------------------------------------------------------
-operation proj=helmert x=0.06155 y=-0.01087 z=-0.04019 s=-0.009994 \
- rx=-0.0394924 ry=-0.0327221 rz=-0.0328979
+operation proj=helmert
+ x = 0.06155 rx = -0.0394924
+ y = -0.01087 ry = -0.0327221
+ z = -0.04019 rz = -0.0328979 s = -0.009994
+
-----------------------------------------------------------------------------------
tolerance 75 um
accept -4052051.7643 4212836.2017 -2545106.0245
expect -4052052.7379 4212835.9897 -2545104.5898
+-------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
GDA94 to GDA2020
-----------------------------------------------------------------------------------
-All the way from geographic-to-geographic
+All the way from geographic-to-cartesian-and-back-to-geographic
-----------------------------------------------------------------------------------
-operation proj=pipeline ellps=GRS80 \
- step proj=cart \
- step proj=helmert x=0.06155 y=-0.01087 z=-0.04019 s=-0.009994 \
- rx=-0.0394924 ry=-0.0327221 rz=-0.0328979 \
- step proj=cart inv
+operation proj = pipeline ellps=GRS80;
+ step proj = cart;
+ step proj = helmert
+ x = 0.06155; rx = -0.0394924;
+ y = -0.01087; ry = -0.0327221;
+ z = -0.04019; rz = -0.0328979; s = -0.009994;
+ step proj = cart inv;
-----------------------------------------------------------------------------------
accept 133.88551329 -23.67012389 603.3466 0 # Alice Springs GDA94
expect 133.8855216 -23.67011014 603.2489 0 # Alice Springs GDA2020
+-------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
-ITRF2014@2018 to GDA2020
+ITRF2014@2018 to GDA2020 - Test point ALIC (Alice Springs)
-----------------------------------------------------------------------------------
Just the Helmert transformation, to verify that we are within 100 um
-----------------------------------------------------------------------------------
-operation proj = helmert; \
- x = 0; rx = 0; dx = 0; drx = 0.00150379; \
- y = 0; ry = 0; dy = 0; dry = 0.00118346; \
- z = 0; rz = 0; dz = 0; drz = 0.00120716; \
- \
- ds = 0; t_epoch=2020.0;
------------------------------------------------------------------------------------
-tolerance 50 um
+operation proj = helmert ellps=GRS80 exact
- # Alice Springs ITRF2014@2018.0
-accept -4052052.6588 4212835.9938 -2545104.6946 2018.0
+ x = 0 rx = 0 dx = 0 drx = 0.00150379
+ y = 0 ry = 0 dy = 0 dry = 0.00118346
+ z = 0 rz = 0 dz = 0 drz = 0.00120716
- # Alice Springs GDA2020
-expect -4052052.7373 4212835.9835 -2545104.5867
+ s = 0 ds = 0 t_epoch=2020.0
+-----------------------------------------------------------------------------------
+tolerance 40 um
+accept -4052052.6588 4212835.9938 -2545104.6946 2018.0 # ITRF2014@2018.0
+expect -4052052.7373 4212835.9835 -2545104.5867 # GDA2020
+-----------------------------------------------------------------------------------
</gie>
diff --git a/test/gie/axisswap.gie b/test/gie/axisswap.gie
index b9281ef7..7f0c366c 100644
--- a/test/gie/axisswap.gie
+++ b/test/gie/axisswap.gie
@@ -2,73 +2,75 @@
Tests for the axisswap operation
-------------------------------------------------------------------------------
-BEGIN
+<gie>
-OPERATION +proj=axisswap +order=1,2,3,4
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT 1 2 3 4
-ROUNDTRIP 100
+operation proj=axisswap order=1,2,3,4
+tolerance 0.000001 m
+accept 1 2 3 4
+expect 1 2 3 4
+roundtrip 100
-OPERATION +proj=axisswap +order=4,3,2,1
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT 4 3 2 1
-ROUNDTRIP 100
+operation proj=axisswap order=4,3,2,1
+tolerance 0.000001 m
+accept 1 2 3 4
+expect 4 3 2 1
+roundtrip 100
-OPERATION +proj=axisswap +order=-1,-2,-3,-4
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT -1 -2 -3 -4
-ROUNDTRIP 100
+operation proj=axisswap order=-1,-2,-3,-4
+tolerance 0.000001 m
+accept 1 2 3 4
+expect -1 -2 -3 -4
+roundtrip 100
-OPERATION +proj=axisswap +order=1,2,-3,4
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT 1 2 -3 4
-ROUNDTRIP 100
+operation proj=axisswap order=1,2,-3,4
+tolerance 0.000001 m
+accept 1 2 3 4
+expect 1 2 -3 4
+roundtrip 100
-OPERATION +proj=axisswap +order=-1,2,3,4
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT -1 2 3 4
-ROUNDTRIP 100
+operation proj=axisswap order=-1,2,3,4
+tolerance 0.000001 m
+accept 1 2 3 4
+expect -1 2 3 4
+roundtrip 100
-OPERATION +proj=axisswap +order=1,2,3,-4
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT 1 2 3 -4
-ROUNDTRIP 100
+operation proj=axisswap order=1,2,3,-4
+tolerance 0.000001 m
+accept 1 2 3 4
+expect 1 2 3 -4
+roundtrip 100
-OPERATION +proj=axisswap +order=-2,1
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT -2 1 3 4
-ROUNDTRIP 100
-$
-OPERATION +proj=axisswap +order=3,-2,1
-TOLERANCE 0.000001 m
-ACCEPT 1 2 3 4
-EXPECT 3 -2 1 4
-ROUNDTRIP 100
+operation proj=axisswap order=-2,1
+tolerance 0.000001 m
+accept 1 2 3 4
+expect -2 1 3 4
+roundtrip 100
+operation proj=axisswap order=3,-2,1
+tolerance 0.000001 m
+accept 1 2 3 4
+expect 3 -2 1 4
+roundtrip 100
-OPERATION proj=pipeline step proj=latlong step proj=axisswap order=1,2,3,4 angularunits
-TOLERANCE 0.00001 m
-ACCEPT 12 55 0 0
-EXPECT 12 55 0 0
-OPERATION +proj=pipeline +step +proj=latlong +step +proj=axisswap +order=-2,-1,3,4 +angularunits
-TOLERANCE 0.00001 m
-ACCEPT 12 55 0 0
-EXPECT -55 -12 0 0
+operation proj=pipeline
+ step proj=latlong
+ step proj=axisswap
+ order=1,2,3,4
+ angularunits
--------------------------------------------------------------------------------
-operation +proj=aea +ellps=GRS80 +lat_1=0 +lat_2=2
--------------------------------------------------------------------------------
-tolerance 0.00010 mm
-accept 2 1
-expect 222571.608757106 110653.326743030
-ROUNDTRIP 100
+tolerance 0.00001 m
+accept 12 55 0 0
+expect 12 55 0 0
+
+operation proj=pipeline
+ step proj=latlong
+ step proj=axisswap
+ order=-2,-1,3,4
+ angularunits
+
+tolerance 0.00001 m
+accept 12 55 0 0
+expect -55 -12 0 0
-END
+</gie>
diff --git a/test/gie/builtins.gie b/test/gie/builtins.gie
index 6b820c01..a9acf4f9 100644
--- a/test/gie/builtins.gie
+++ b/test/gie/builtins.gie
@@ -10,7 +10,7 @@ See more_builtins.gie for some test cases with a more human touch.
===============================================================================
-BEGIN
+<gie>
===============================================================================
Albers Equal Area
@@ -505,7 +505,7 @@ expect -0.001790493 -0.000895247
===============================================================================
Central Conic
Sph
- lat_1
+ lat_1
===============================================================================
-------------------------------------------------------------------------------
@@ -4716,6 +4716,5 @@ accept -200 100
expect -0.001790493 0.000895247
accept -200 -100
expect -0.001790493 -0.000895247
-Internal regression tests done. [Stubs: 0] Total: 151. Failure: 0. Success: 151
-END
+</gie>
diff --git a/test/gie/deformation.gie b/test/gie/deformation.gie
index 07a8b45e..029387c4 100644
--- a/test/gie/deformation.gie
+++ b/test/gie/deformation.gie
@@ -9,27 +9,28 @@ The input coordinate is located at lon=60, lam=-160 - somewhere in Alaska.
===============================================================================
-BEGIN
+<gie>
-------------------------------------------------------------------------------
Test using both horizontal and vertical grids as well as the +tobs parameter
-------------------------------------------------------------------------------
-OPERATION +proj=deformation +xy_grids=alaska +z_grids=egm96_15.gtx +t_epoch=2016.0 +t_obs=2000.0 +ellps=GRS80
+operation +proj=deformation +xy_grids=alaska +z_grids=egm96_15.gtx
+ +t_epoch=2016.0 +t_obs=2000.0 +ellps=GRS80
-------------------------------------------------------------------------------
-TOLERANCE 0.1 mm
-ACCEPT -3004295.5882503074 -1093474.1690603832 5500477.1338251457
-EXPECT -3004295.7025 -1093474.2106 5500477.3444
-ROUNDTRIP 5
+tolerance 0.1 mm
+accept -3004295.5882503074 -1093474.1690603832 5500477.1338251457
+expect -3004295.7025 -1093474.2106 5500477.3444
+roundtrip 5
-------------------------------------------------------------------------------
Test using both horizontal and vertical grids
-------------------------------------------------------------------------------
-OPERATION +proj=deformation +xy_grids=alaska +z_grids=egm96_15.gtx +t_epoch=2016.0 +ellps=GRS80
+operation +proj=deformation
+ +xy_grids=alaska +z_grids=egm96_15.gtx +t_epoch=2016.0 +ellps=GRS80
-------------------------------------------------------------------------------
-TOLERANCE 0.1 mm
-ACCEPT -3004295.5882503074 -1093474.1690603832 5500477.1338251457 2000.0
-EXPECT -3004295.7025 -1093474.2106 5500477.3444 2000.0
-ROUNDTRIP 5
+tolerance 0.1 mm
+accept -3004295.5882503074 -1093474.1690603832 5500477.1338251457 2000.0
+expect -3004295.7025 -1093474.2106 5500477.3444 2000.0
+roundtrip 5
-
-END
+</gie>
diff --git a/test/gie/ellipsoid.gie b/test/gie/ellipsoid.gie
index 65101f6c..81208bc1 100644
--- a/test/gie/ellipsoid.gie
+++ b/test/gie/ellipsoid.gie
@@ -5,7 +5,7 @@ Test pj_ellipsoid, the reimplementation of pj_ell_set
===============================================================================
-BEGIN
+<gie>
-------------------------------------------------------------------------------
First a spherical example
@@ -56,7 +56,8 @@ operation proj=merc ellps=GRS80000000000
expect failure errno unknown_ellp_param
operation proj=merc +a=-1
expect failure errno major_axis_not_given
-operation proj=merc +no_defs
+
+operation proj=merc no_defs
expect failure errno major_axis_not_given
# This one should succeed due to ellps=WGS84 in proj_def.dat
@@ -158,4 +159,4 @@ accept 12 55
expect 700416.5900 5669475.8884
-------------------------------------------------------------------------------
-END
+</gie>
diff --git a/test/gie/more_builtins.gie b/test/gie/more_builtins.gie
index 501406ae..2d558f88 100644
--- a/test/gie/more_builtins.gie
+++ b/test/gie/more_builtins.gie
@@ -8,7 +8,7 @@ intends to exercise corner cases.
===============================================================================
-BEGIN
+<gie>
-------------------------------------------------------------------------------
Two ob_tran tests from nad/testvarious
@@ -34,8 +34,8 @@ expect -1384841.18787 7581707.88240 0 0
-------------------------------------------------------------------------------
Two tests from PJ_molodensky.c
-------------------------------------------------------------------------------
-operation proj=molodensky a=6378160 rf=298.25 \
- da=-23 df=-8.120449e-8 dx=-134 dy=-48 dz=149 \
+operation proj=molodensky a=6378160 rf=298.25
+ da=-23 df=-8.120449e-8 dx=-134 dy=-48 dz=149
abridged
-------------------------------------------------------------------------------
tolerance 2 m
@@ -47,7 +47,7 @@ roundtrip 100 1 m
-------------------------------------------------------------------------------
Same thing once more, but this time unabridged
-------------------------------------------------------------------------------
-operation proj=molodensky a=6378160 rf=298.25 \
+operation proj=molodensky a=6378160 rf=298.25
da=-23 df=-8.120449e-8 dx=-134 dy=-48 dz=149
-------------------------------------------------------------------------------
tolerance 2 m
@@ -67,8 +67,8 @@ Some tests from PJ_pipeline.c
-------------------------------------------------------------------------------
Forward-reverse geo->utm->geo
-------------------------------------------------------------------------------
-operation proj=pipeline zone=32 step \
- proj=utm ellps=GRS80 step \
+operation proj=pipeline zone=32 step
+ proj=utm ellps=GRS80 step
proj=utm ellps=GRS80 inv
-------------------------------------------------------------------------------
tolerance 0.1 mm
@@ -83,8 +83,8 @@ expect 12 55 0 0
-------------------------------------------------------------------------------
And now the back-to-back situation utm->geo->utm
-------------------------------------------------------------------------------
-operation proj=pipeline zone=32 ellps=GRS80 step \
- proj=utm inv step \
+operation proj=pipeline zone=32 ellps=GRS80 step
+ proj=utm inv step
proj=utm
-------------------------------------------------------------------------------
accept 691875.63214 6098907.82501 0 0
@@ -104,10 +104,10 @@ expect 12 55 0 0
-------------------------------------------------------------------------------
Finally test a pipeline with more than one init step
-------------------------------------------------------------------------------
-operation proj=pipeline step \
- init=epsg:25832 inv step \
- init=epsg:25833 step \
- init=epsg:25833 inv step \
+operation proj=pipeline step
+ init=epsg:25832 inv step
+ init=epsg:25833 step
+ init=epsg:25833 inv step
init=epsg:25832
-------------------------------------------------------------------------------
accept 691875.63214 6098907.82501 0 0
@@ -131,7 +131,7 @@ N(12.5, 55.5) = -36.021305084228515625 (download.osgeo.org)
N(12.5, 55.5) = -35.880001068115234000 (OSGeo4W)
This is annoying, but must be handled elsewhere. We jump through the hoop by
setting a very lax tolerance.
-
+-------------------------------------------------------------------------------
tolerance 15 cm
accept 12.5 55.5 0 0
expect 12.5 55.5 -36.021305084228516 0
@@ -145,6 +145,7 @@ expect failure errno no_args
Fail on purpose: open non-existing grid
operation proj=vgridshift grids=nonexistinggrid.gtx
expect failure errno failed_to_load_grid
+-------------------------------------------------------------------------------
@@ -164,13 +165,14 @@ direction inverse
accept 172.999892181021551 -45.001620431954613 0 0
expect 173 -45 0 0
-------------------------------------------------------------------------------
-Fail on purpose: +grids parameter is mandatory:
-operation proj=hgridshift
-expect failure errno no_args
-Fail on purpose: open non-existing grid:
+# Fail on purpose: open non-existing grid:
operation proj=hgridshift grids=@nonexistinggrid.gsb,anothernonexistinggrid.gsb
expect failure errno failed_to_load_grid
+
+# Fail on purpose: +grids parameter is mandatory:
+operation proj=hgridshift
+expect failure errno no_args
-------------------------------------------------------------------------------
@@ -179,44 +181,57 @@ expect failure errno failed_to_load_grid
-------------------------------------------------------------------------------
A number of tests from PJ_helmert.c
-------------------------------------------------------------------------------
+
+
+-------------------------------------------------------------------------------
This example is from Lotti Jivall: "Simplified transformations from
ITRF2008/IGS08 to ETRS89 for maritime applications"
-------------------------------------------------------------------------------
-operation proj=helmert ellps=GRS80 \
- x=0.67678 y=0.65495 z=-0.52827 \
+operation proj=helmert ellps=GRS80
+ x=0.67678 y=0.65495 z=-0.52827
rx=-0.022742 ry=0.012667 rz=0.022704 s=-0.01070
-------------------------------------------------------------------------------
tolerance 1 um
accept 3565285.00000000 855949.00000000 5201383.00000000
expect 3565285.41342351 855948.67986759 5201382.72939791
-------------------------------------------------------------------------------
+
+
+-------------------------------------------------------------------------------
This example is a random point, transformed from ED50 to ETRS89 using KMStrans2
-------------------------------------------------------------------------------
-operation proj=helmert ellps=GRS80 exact \
- x=-81.0703 y=-89.3603 z=-115.7526 \
- rx=-0.48488 ry=-0.02436 rz=-0.41321 s=-0.540645
+operation proj=helmert ellps=GRS80 exact
+ x=-081.0703 rx=-0.48488
+ y=-089.3603 ry=-0.02436
+ z=-115.7526 rz=-0.41321 s=-0.540645
-------------------------------------------------------------------------------
tolerance 1 um
accept 3494994.30120000 1056601.97250000 5212382.16660000
expect 3494909.84026368 1056506.78938633 5212265.66699761
-------------------------------------------------------------------------------
+
+
+-------------------------------------------------------------------------------
This example is a coordinate from the geodetic observatory in Onsala,
Sweden transformed from ITRF2000 @ 2017.0 to ITRF93 @ 2017.0.
The test coordinate was transformed using GNSStrans, using transformation
parameters published by ITRF: ftp://itrf.ensg.ign.fr/pub/itrf/ITRF.TP
-------------------------------------------------------------------------------
-operation proj=helmert ellps=GRS80 \
- x=0.0127 y=0.0065 z=-0.0209 s=0.00195 \
- dx=-0.0029 dy=-0.0002 dz=-0.0006 ds=0.00001 \
- rx=-0.00039 ry=0.00080 rz=-0.00114 \
- drx=-0.00011 dry=-0.00019 drz=0.00007 \
- t_epoch=1988.0 t_obs=2017.0 transpose
+operation proj=helmert ellps=GRS80 transpose
+ x = 0.0127 dx = -0.0029 rx = -0.00039 drx = -0.00011
+ y = 0.0065 dy = -0.0002 ry = 0.00080 dry = -0.00019
+ z = -0.0209 dz = -0.0006 rz = -0.00114 drz = 0.00007
+
+ s = 0.00195 ds = 0.00001 t_epoch = 1988.0
-------------------------------------------------------------------------------
tolerance 0.03 mm
accept 3370658.37800 711877.31400 5349787.08600 2017.0 # ITRF2000@2017.0
expect 3370658.18890 711877.42370 5349787.12430 2017.0 # ITRF93@2017.0
-------------------------------------------------------------------------------
+
+
+-------------------------------------------------------------------------------
This example is from "A mathematical relationship between NAD27 and NAD83 (91)
State Plane coordinates in Southeastern Wisconsin":
http://www.sewrpc.org/SEWRPCFiles/Publications/TechRep/tr-034-Mathematical-Relationship-Between-NAD27-and-NAD83-91-State-Plane-Coordinates-Southeastern-Wisconsin.pdf
@@ -225,25 +240,28 @@ The test data is taken from p. 29. Here we are using point 203 and converting it
from NAD27 (ft) -> NAD83 (m). The paper reports a difference of 0.0014 m from
measured to computed coordinates, hence the test tolerance is set accordingly.
-------------------------------------------------------------------------------
-operation proj=helmert ellps=GRS80 \
- x=-9597.3572 y=.6112 \
+operation proj=helmert ellps=GRS80
+ x=-9597.3572 y=.6112
s=0.304794780637 theta=-1.244048
-------------------------------------------------------------------------------
tolerance 1 mm
accept 2546506.957 542256.609 0
expect 766563.675 165282.277 0
-------------------------------------------------------------------------------
+
+
+-------------------------------------------------------------------------------
Finally test the 4D-capabilities of the proj.h API, especially that the
rotation matrix is updated when necessary.
Test coordinates from GNSStrans.
-------------------------------------------------------------------------------
-operation proj=helmert ellps=GRS80 \
- x=0.01270 y=0.00650 z=-0.0209 s=0.00195 \
- dx=-0.0029 dy=-0.0002 dz=-0.0006 ds=0.00001 \
- rx=-0.00039 ry=0.00080 rz=-0.00114 \
- drx=-0.00011 dry=-0.00019 drz=0.00007 \
- t_epoch=1988.0 transpose
+operation proj=helmert ellps=GRS80 transpose
+ x = 0.01270 dx =-0.0029 rx =-0.00039 drx =-0.00011
+ y = 0.00650 dy =-0.0002 ry = 0.00080 dry =-0.00019
+ z =-0.0209 dz =-0.0006 rz =-0.00114 drz = 0.00007
+ s = 0.00195 ds = 0.00001
+ t_epoch=1988.0
-------------------------------------------------------------------------------
tolerance 0.1 mm
accept 3370658.378 711877.314 5349787.086 2017.0
@@ -293,4 +311,4 @@ to express in the gie command set
builtins
-------------------------------------------------------------------------------
-END
+</gie>
diff --git a/test/gie/pip.gie b/test/gie/pip.gie
new file mode 100644
index 00000000..0cb54614
--- /dev/null
+++ b/test/gie/pip.gie
@@ -0,0 +1,41 @@
+These two tests have occasionally been causing segfaults from gie, but
+only at low PROJ_DEBUG levels.
+
+<gie>
+-------------------------------------------------------------------------------
+Finally test a pipeline with more than one init step
+-------------------------------------------------------------------------------
+operation proj=pipeline step
+ init=epsg:25832 inv step
+ init=epsg:25833 step
+ init=epsg:25833 inv step
+ init=epsg:25832
+-------------------------------------------------------------------------------
+accept 691875.63214 6098907.82501 0 0
+expect 691875.63214 6098907.82501 0 0
+direction inverse
+accept 12 55 0 0
+expect 12 55 0 0
+-------------------------------------------------------------------------------
+
+
+
+-------------------------------------------------------------------------------
+This example is a coordinate from the geodetic observatory in Onsala,
+Sweden transformed from ITRF2000 @ 2017.0 to ITRF93 @ 2017.0.
+
+The test coordinate was transformed using GNSStrans, using transformation
+parameters published by ITRF: ftp://itrf.ensg.ign.fr/pub/itrf/ITRF.TP
+-------------------------------------------------------------------------------
+operation proj=helmert ellps=GRS80 transpose
+ x = 0.0127 dx = -0.0029 rx = -0.00039 drx = -0.00011
+ y = 0.0065 dy = -0.0002 ry = 0.00080 dry = -0.00019
+ z = -0.0209 dz = -0.0006 rz = -0.00114 drz = 0.00007
+
+ s = 0.00195 ds = 0.00001 t_epoch = 1988.0
+-------------------------------------------------------------------------------
+tolerance 0.03 mm
+accept 3370658.37800 711877.31400 5349787.08600 2017.0 # ITRF2000@2017.0
+expect 3370658.18890 711877.42370 5349787.12430 2017.0 # ITRF93@2017.0
+-------------------------------------------------------------------------------
+</gie>