mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-12-27 08:49:16 +08:00
0454d8e235
interoperability fixed. We were given a Zarr format dataset stored as a directory+file tree. This dataset uses the XArray conventions and was generated by some non-Unidata Zarr implementation. In attempting to process it with NCZarr, several interoperability problems were discovered and fixed. This gives us more confidence that NCZarr -- using pure zarr -- can interoperate with other Zarr implementations. Specific changes: * Add test nczarr_test/run_interop.sh * Support attributes with single value not enclosed in JSON array tags. * Add mode inferencing and use it in nczarr_test/run_purezarr.sh * Reduce size of tst_err_enddef.nc because it is more than 3 GB.
58 lines
1.4 KiB
Bash
Executable File
58 lines
1.4 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
if test "x$srcdir" = x ; then srcdir=`pwd`; fi
|
|
. ../test_common.sh
|
|
|
|
. "$srcdir/test_nczarr.sh"
|
|
|
|
# This shell script tests compatibility between
|
|
# this implementation and other implementations
|
|
# by means of files constructed by that other implementation
|
|
|
|
set -e
|
|
|
|
testcasefile() {
|
|
zext=file
|
|
ref=$1
|
|
mode=$2
|
|
if test "x$3" = xmetaonly ; then flags="-h"; fi
|
|
fileargs ${srcdir}/$ref "mode=$mode,$zext"
|
|
rm -f tmp_${ref}_${zext}.cdl
|
|
${NCDUMP} $flags $fileurl > tmp_${ref}_${zext}.cdl
|
|
diff -b ${srcdir}/ref_${ref}.cdl tmp_${ref}_${zext}.cdl
|
|
}
|
|
|
|
testcasezip() {
|
|
zext=zip
|
|
ref=$1
|
|
mode=$2
|
|
if test "x$3" = xmetaonly ; then flags="-h"; fi
|
|
fileargs ${srcdir}/$ref "mode=$mode,$zext"
|
|
rm -f tmp_${ref}_${zext}.cdl
|
|
${NCDUMP} $flags $fileurl > tmp_${ref}_${zext}.cdl
|
|
diff -b ${srcdir}/ref_${ref}.cdl tmp_${ref}_${zext}.cdl
|
|
}
|
|
|
|
testallcases() {
|
|
zext=$1
|
|
case "$zext" in
|
|
file)
|
|
# need to unpack
|
|
rm -fr power_901_constants power_901_constants.file
|
|
unzip ${srcdir}/power_901_constants.zip > /dev/null
|
|
mv power_901_constants power_901_constants.file
|
|
testcasefile power_901_constants xarray metaonly
|
|
;;
|
|
zip)
|
|
testcasezip power_901_constants xarray metaonly
|
|
;;
|
|
*) echo "unimplemented kind: $1" ; exit 1;;
|
|
esac
|
|
}
|
|
|
|
#testallcases file
|
|
if test "x$FEATURE_NCZARR_ZIP" = xyes ; then testallcases zip; fi
|
|
#No examples yet: if test "x$FEATURE_S3TESTS" = xyes ; then testallcases s3; fi
|
|
|
|
exit 0
|