opengeospatial / ets-gpkg12-nsg

Other
2 stars 5 forks source link

CRS Tests done via string comparison #34

Closed bermud closed 6 years ago

bermud commented 6 years ago

The NSG profile tests in the Geopackage CITE tests for CRS are not being done in a proper fashion. The test is doing a simple string compare of the entire CRS WKT. This is not a proper approach to validating a CRS. The CRS must be evaluated on a component by component basis to establish if the CRS is correct.

A simple example of why the current CITE test string comparison won’t work – a CRS WKT may contain comments – the NSG string compared against contains comments. I can get a test failure simply by putting in a description such as “Break the CITE Test”…

Horizontal component of 3D system. Used by the GPS satellite navigation system and for NATO military geodetic surveying.

It’s also possible to break the test by using alternate approved/documented keywords for the same object or object value. Or changing the order in a non-ambiguous fashion.

lgoltz commented 6 years ago

I close this as duplicate with reference to #27.

lgoltz commented 6 years ago

27 handles a test failure when the description of the CRS in the GeoPackage does not match the one from the specification.

In the test https://github.com/opengeospatial/ets-gpkg12-nsg/blob/52f0692c60f4a95301294c22591721ac59e6981b/src/main/java/org/opengis/cite/gpkg12/nsg/core/NSG_SpatialReferenceSystemsTests.java#L197 the WKT is compared, but of they are not equal this is not a test failure.

@bermud Which test fails exactly with which version of the ETS and geopackage?

ghost commented 6 years ago

Is this issue in reference to the CRS Description of Requirement 19 of the profile? https://nsgreg.nga.mil/doc/view?i=4379

If so, then the description should be the ones from Table 7 through Table 19. I don't see an issue with the way it is being tested in the test tool.

lgoltz commented 6 years ago

@melvchan Thank you for commenting! I close this ticket as it is not clear which test is failing.

@bermud If there are remaining issues, please create a tickets. The exact test name, test resource and version of the ets and teamengine would be helpful.