mirror of
https://github.com/Unidata/netcdf-c.git
synced 2024-11-27 07:30:33 +08:00
7be9506aac
to get TOPSRCDIR that avoids use of TEST_ENVIRONMENT and makes automake and cmake more consistent. Basic assumption is that abs_top_srcdir (and cmake equivalent) is known at 'make check' time, so we can use -D flag to compile a program that has the value of abs_top_srcdir embedded into it as a constant. We define two new files in ncdap_test: 1. t_srcdir.h -- provide a gettopsrcdir() function to return the topsrcdir value to the test program. 2. topsrcdir.c -- a program that calls gettopsrcdir() and prints its output (minus any newline) on stdout. This is used in .sh files to get topsrcdir.
115 lines
2.1 KiB
Bash
Executable File
115 lines
2.1 KiB
Bash
Executable File
#!/bin/sh
|
|
#set -x
|
|
|
|
#NOP=1
|
|
#NOS=1
|
|
#NOB=1
|
|
|
|
#SHOW=1
|
|
#DBG=1
|
|
#GDB=1
|
|
|
|
# if this is part of a distcheck action, then this script
|
|
# will be executed in a different directory
|
|
# than the one containing it; so capture the path to this script
|
|
# as the location of the source directory.
|
|
|
|
# capture the build directory
|
|
# Do a hack to remove e.g. c: for CYGWIN
|
|
|
|
topsrcdir=`topsrcdir`
|
|
if test "x$topsrcdir" != x ; then
|
|
srcdir="$topsrcdir/ncdap_test"
|
|
else
|
|
srcdir=`dirname $0`
|
|
fi
|
|
|
|
builddir=`pwd`/..
|
|
|
|
# canonical form
|
|
cd $srcdir
|
|
srcdir=`pwd`
|
|
|
|
# Hack for CYGWIN
|
|
if [ `uname | cut -d "_" -f 1` = "MINGW32" ]; then
|
|
srcdir=`echo $srcdir | sed 's/\/c\//c:\//g'`
|
|
builddir=`echo $builddir | sed 's/\/c\//c:\//g'`
|
|
fi
|
|
cd ${builddir}/ncdap_test
|
|
|
|
OCLOGFILE=stderr
|
|
if test "x$DBG" = x1 ; then
|
|
SHOW=1
|
|
fi
|
|
|
|
NCDUMP=$builddir/ncdump/ncdump
|
|
|
|
URL="http://remotetest.unidata.ucar.edu/dts/test.03"
|
|
|
|
PREFIX="[log][show=fetch]"
|
|
SUFFIX="log&show=fetch"
|
|
BOTHP="[log][show=fetch]"
|
|
BOTHS="noprefetch&fetch=disk"
|
|
|
|
locreset () {
|
|
rm -f ./tmp ./errtmp
|
|
}
|
|
|
|
buildurl () {
|
|
front="$1"
|
|
back="$2"
|
|
url="${front}${URL}"
|
|
if test "x$back" != x ; then
|
|
url="${url}#${back}"
|
|
fi
|
|
}
|
|
|
|
pass=1
|
|
|
|
if test "x$GDB" = x1 ; then
|
|
NCDUMP="gdb --args $NCDUMP"
|
|
fi
|
|
|
|
# Initialize
|
|
locreset
|
|
|
|
if test "x$NOP" != x1 ; then
|
|
echo "***Testing url prefix parameters"
|
|
buildurl $PREFIX ""
|
|
# Invoke ncdump to extract the URL
|
|
echo "command: ${NCDUMP} -h $url"
|
|
${NCDUMP} -h "$url" >./tmp 2> ./errtmp
|
|
if test "x${SHOW}" = x1 ; then cat ./tmp ; fi
|
|
fi
|
|
|
|
locreset
|
|
if test "x$NOS" != x1 ; then
|
|
echo "***Testing url suffix parameters"
|
|
buildurl "" $SUFFIX
|
|
# Invoke ncdump to extract the URL
|
|
echo "command: ${NCDUMP} -h $url"
|
|
${NCDUMP} -h "$url" >./tmp 2> ./errtmp
|
|
if test "x${SHOW}" = x1 ; then cat ./tmp ; fi
|
|
fi
|
|
|
|
locreset
|
|
if test "x$NOB" != x1 ; then
|
|
echo "***Testing url prefix+suffix parameters"
|
|
buildurl $BOTHP $BOTHS
|
|
# Invoke ncdump to extract the URL
|
|
echo "command: ${NCDUMP} -h $url"
|
|
${NCDUMP} -h "$url" >./tmp 2> ./errtmp
|
|
if test "x${SHOW}" = x1 ; then cat ./tmp ; fi
|
|
fi
|
|
|
|
locreset
|
|
|
|
if test "x$pass" = x0 ; then
|
|
echo "***FAIL"
|
|
exit 1
|
|
fi
|
|
echo "***PASS"
|
|
exit 0
|
|
|
|
|