netcdf-c/ncdump/tst_output.sh
Dennis Heimbigner a2e0f069ec This pr should probably be delayed until after Version 4.5.
Primary change is to cleanup code and remove duplicated code.

1. Unify the rc file reading into libdispatch/drc.c. Eventually extend
   if we need rc file for netcdf itself as opposed to the dap code.
2. Unify the extraction from the rc file of DAP authorization info.
3. Misc. other small unifications: make temp file, read file.
4. Avoid use of libcurl when reading file:// because
   there is some kind of problem with the Visual Studio version.
   Might be related to the winpath problem.
   In any case, do direct read instead.
5. Add new error code NC_ERCFILE for errors in reading RC file.
6. Complete documentation cleanup as indicated in this comment
   https://github.com/Unidata/netcdf-c/pull/472#issuecomment-325926426
7. Convert some occurrences of #ifdef _WIN32 to #ifdef _MSC_VER
2017-09-02 18:09:36 -06:00

69 lines
2.6 KiB
Bash
Executable File

#!/bin/sh
set -x
if test "x$srcdir" = x ; then srcdir=`pwd`; fi
. ../test_common.sh
# This shell script tests the output from several previous tests.
set -e
echo ""
echo "*** Testing ncgen and ncdump test output for classic format."
echo "*** creating ctest1.cdl from ctest0.nc..."
${NCDUMP} -n c1 ${builddir}/ctest0.nc | sed 's/e+0/e+/g' > ctest1.cdl
echo "*** creating c0.nc from c0.cdl..."
${NCGEN} -b -o c0.nc ${ncgenc0}
echo "*** creating c1.cdl from c0.nc..."
${NCDUMP} -n c1 ${builddir}/c0.nc | sed 's/e+0/e+/g' > c1.cdl
echo "*** comparing ncdump of C program output (ctest1.cdl) with c1.cdl..."
diff -b c1.cdl ctest1.cdl
echo "*** test output for ncdump -k"
KIND=`${NCDUMP} -k c0.nc`
test "$KIND" = "classic";
${NCGEN} -k $KIND -b -o c0tmp.nc ${ncgenc0}
cmp c0tmp.nc c0.nc
echo "*** test output for ncdump -x"
echo "*** creating tst_ncml.nc from tst_ncml.cdl"
${NCGEN} -b -o tst_ncml.nc $srcdir/tst_ncml.cdl
echo "*** creating c1.ncml from tst_ncml.nc"
${NCDUMP} -x tst_ncml.nc | sed 's/e-00/e-0/g' > c1.ncml
echo "*** comparing ncdump -x of generated file with ref1.ncml ..."
diff -b c1.ncml $srcdir/ref1.ncml
echo "*** test output for ncdump -s"
echo "*** creating tst_mslp.nc from tst_mslp.cdl"
${NCGEN} -b -o tst_mslp.nc $srcdir/tst_mslp.cdl
echo "*** creating tst_format_att.cdl from tst_mslp.nc"
${NCDUMP} -s tst_mslp.nc > tst_format_att.cdl
echo "*** comparing ncdump -s of generated file with ref_tst_format_att.cdl ..."
diff -b tst_format_att.cdl $srcdir/ref_tst_format_att.cdl
echo "*** All ncgen and ncdump test output for classic format passed!"
echo "*** Testing ncgen and ncdump test output for 64-bit offset format."
echo "*** creating ctest1_64.cdl from test0_64.nc..."
${NCDUMP} -n c1 ctest0_64.nc | sed 's/e+0/e+/g' > ctest1_64.cdl
echo "*** creating c0.nc from c0.cdl..."
${NCGEN} -k nc6 -b -o c0.nc ${ncgenc0}
echo "*** creating c1.cdl from c0.nc..."
${NCDUMP} -n c1 c0.nc | sed 's/e+0/e+/g' > c1.cdl
echo "*** comparing ncdump of C program output (ctest1_64.cdl) with c1.cdl..."
diff -b c1.cdl ctest1_64.cdl
echo "*** test output for ncdump -k"
test "`${NCDUMP} -k c0.nc`" = "64-bit offset";
${NCGEN} -k nc6 -b -o c0tmp.nc ${ncgenc0}
cmp c0tmp.nc c0.nc
echo "*** test output for ncdump -s"
echo "*** creating tst_mslp_64.nc from tst_mslp.cdl"
${NCGEN} -k nc6 -b -o tst_mslp_64.nc ${srcdir}/tst_mslp.cdl
echo "*** creating tst_format_att_64.cdl from tst_mslp_64.nc"
${NCDUMP} -s tst_mslp_64.nc | sed 's/e+0/e+/g' > tst_format_att_64.cdl
echo "*** comparing ncdump -s of generated file with ref_tst_format_att_64.cdl ..."
diff -b tst_format_att_64.cdl $srcdir/ref_tst_format_att_64.cdl
echo "*** All ncgen and ncdump test output for 64-bit offset format passed!"
exit 0