2017-03-09 08:01:10 +08:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
if test "x$srcdir" = x ; then srcdir=`pwd`; fi
|
|
|
|
. ../test_common.sh
|
|
|
|
|
2021-01-15 12:39:08 +08:00
|
|
|
set -e
|
|
|
|
|
2022-10-19 04:27:12 +08:00
|
|
|
. ${top_srcdir}/dap4_test/d4test_common.sh
|
2017-03-09 08:01:10 +08:00
|
|
|
|
2017-05-18 02:30:24 +08:00
|
|
|
echo "test_data.sh:"
|
|
|
|
|
2022-11-14 04:15:11 +08:00
|
|
|
computetestablefiles
|
2017-03-09 08:01:10 +08:00
|
|
|
|
2018-06-27 03:58:45 +08:00
|
|
|
setresultdir results_test_data
|
|
|
|
|
2017-03-09 08:01:10 +08:00
|
|
|
if test "x${RESET}" = x1 ; then rm -fr ${BASELINE}/*.d4d ; fi
|
|
|
|
for f in $F ; do
|
|
|
|
echo "testing: ${f}"
|
2022-11-14 04:15:11 +08:00
|
|
|
if ! ${execdir}/test_data -s ${builddir}/results_test_data/${f} ${RAWTESTFILES}/${f} ; then
|
2021-01-15 12:39:08 +08:00
|
|
|
echo "failure"
|
2017-03-09 08:01:10 +08:00
|
|
|
fi
|
2022-11-14 04:15:11 +08:00
|
|
|
${NCDUMP} ${DUMPFLAGS} ${builddir}/results_test_data/${f} > ${builddir}/results_test_data/${f}.d4d
|
2017-03-09 08:01:10 +08:00
|
|
|
if test "x${TEST}" = x1 ; then
|
2022-11-14 04:15:11 +08:00
|
|
|
diff -wBb ${BASELINE}/${f}.d4d ${builddir}/results_test_data/${f}.d4d
|
2017-03-09 08:01:10 +08:00
|
|
|
elif test "x${RESET}" = x1 ; then
|
2018-11-17 06:08:17 +08:00
|
|
|
echo "${f}:"
|
2022-11-14 04:15:11 +08:00
|
|
|
cp ${builddir}/results_test_data/${f}.d4d ${BASELINE}/${f}.d4d
|
2017-03-09 08:01:10 +08:00
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
# Remove empty lines and trim lines in a cdl file
|
|
|
|
trim() {
|
|
|
|
if test $# != 2 ; then
|
|
|
|
echo "simplify: too few args"
|
|
|
|
else
|
|
|
|
rm -f $2
|
|
|
|
while read -r iline; do
|
|
|
|
oline=`echo $iline | sed -e 's/^[\t ]*\([^\t ]*\)[\t ]*$/\\1/'`
|
|
|
|
if test "x$oline" = x ; then continue ; fi
|
|
|
|
echo "$oline" >> $2
|
|
|
|
done < $1
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
# Do cleanup on the baseline file
|
|
|
|
baseclean() {
|
|
|
|
if test $# != 2 ; then
|
|
|
|
echo "simplify: too few args"
|
|
|
|
else
|
|
|
|
rm -f $2
|
|
|
|
while read -r iline; do
|
|
|
|
oline=`echo $iline | tr "'" '"'`
|
|
|
|
echo "$oline" >> $2
|
|
|
|
done < $1
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
# Do cleanup on the result file
|
|
|
|
resultclean() {
|
|
|
|
if test $# != 2 ; then
|
|
|
|
echo "simplify: too few args"
|
|
|
|
else
|
|
|
|
rm -f $2
|
|
|
|
while read -r iline; do
|
|
|
|
oline=`echo $iline | sed -e 's|^\(netcdf.*\)[.]nc\(.*\)$|\\1\\2|'`
|
|
|
|
echo "$oline" >> $2
|
|
|
|
done < $1
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
if test "x${CDLDIFF}" = x1 ; then
|
|
|
|
for f in $F ; do
|
|
|
|
STEM=`echo $f | cut -d. -f 1`
|
|
|
|
if ! test -e ${CDLTESTFILES}/${STEM}.cdl ; then
|
|
|
|
echo "Not found: ${CDLTESTFILES}/${STEM}.cdl"
|
|
|
|
continue
|
|
|
|
fi
|
2022-11-14 04:15:11 +08:00
|
|
|
echo "diff -wBb ${CDLTESTFILES}/${STEM}.cdl ${builddir}/results_test_data/${f}.d4d"
|
|
|
|
rm -f ${builddir}/b1 ${builddir}/b2 ${builddir}/r1 ${builddir}/r2
|
|
|
|
trim ${CDLTESTFILES}/${STEM}.cdl ${builddir}/b1
|
|
|
|
trim ${builddir}/results_test_data/${f}.d4d ${builddir}/r1
|
2017-03-09 08:01:10 +08:00
|
|
|
baseclean b1 b2
|
2018-11-17 06:08:17 +08:00
|
|
|
resultclean r1 r2
|
2022-11-14 04:15:11 +08:00
|
|
|
diff -wBb ${builddir}/b2 ${builddir}/r2
|
2017-03-09 08:01:10 +08:00
|
|
|
done
|
|
|
|
fi
|
|
|
|
|