Closed sharkcz closed 9 months ago
In libdap4/tests run "./DMRTest -v --baselines=yes 243 244 ... 249" on a big endian machine. This will make baselines in the dmr-testsuite/bigendian dir with the suffix ".tmp". Give them a look to make sure they are valid and then rename to remove the .tmp if so and add/commit those new baselines.
However, the differences between the bigendian and littleendian baselines are only in the checksums. We could decide to test the correctness of the checksums separately and then, for the bulk of the tests, elide the checksum value from the baseline and from the response. This would save considerable effort as new tests are added. The loss is that the testing of the checksum values would be limited to set of tests specifically for those cases.
I used this technique in other code we have (and for things like error messages with code line numbers in a data server when that server is built in 'developer mode.'
Let me know what you think of this idea.
I think I will generate the big endian baseline files as a short term fix. But I like the idea of separating the checksum checks, so the tests data could be arch/endian agnostic.
The test suite fails on big endian arches after commit 30290c121b09a2e08828fecc5878aa7e7c777b4c, because it adds only little-endian "gold" results.
Could you remind me, how to generate the missing files? Or is there a deeper issue?