Implement read tests for non python implementations
Currently, we only check that data can be read with the python libraries (zarr-python, z5py, pyn5). We should also implement read tests for the non-python libraries though:
- n5-java: test reading all n5 files
- zarr-js: test readling the zarr(V2) files (PR #21)
- xtensor-zarr, read the zarr(V2) files (PR #24 still pending)
I can implement the n5-java test at some point (but probably won't have time in the next 3 weeks.)
What strategy were you thinking? A subprocess call from test_read_all.py? Or do we add a test runner for each language? e.g. junit or testng for Java and cppunit or gtest for C++? (Anyone have a completely different strategy?)
I think a subprocess call in test_read_all.py is a good solution.
That's also done in the PR for reading with xtensor, see https://github.com/zarr-developers/zarr_implementations/pull/34.
:+1: I'll give this a try.
+1 I'll give this a try.
Cool!
Just note that the one for xtensor is already under way in #34 and just pending some fixes I have to make in z5. I am looking into this today.
Noted. I'll deal with any conflicts. An issue with the strategy in #34 will be how to get a npy from Java. Seems like that will introduce a new class of possible errors.
Can you use kotlin on the java side? Because this seems fairly well tested: https://github.com/JetBrains-Research/npy
Can you use kotlin on the java side? Because this seems fairly well tested: https://github.com/JetBrains-Research/npy
Ah, I had missed this discussion, but this is the same library I happened to find today and mention in https://github.com/zarr-developers/zarr_implementations/pull/37#discussion_r621505542. However I see now that in the README at that repository it states that unsigned integer types are currently not supported, so that would be a problem for our current test data here