mirror of https://github.com/ecmwf/eccodes.git
Testing: Split long tests
This commit is contained in:
parent
2a8bf2b233
commit
d476cb7171
|
@ -181,6 +181,8 @@ if( HAVE_BUILD_TOOLS )
|
|||
bufr_wmo_tables
|
||||
bufr_extract_headers
|
||||
extract_offsets
|
||||
bufr_ecc-147
|
||||
bufr_ecc-389
|
||||
bufr_ecc-673
|
||||
bufr_ecc-428
|
||||
bufr_ecc-286
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
#!/bin/sh
|
||||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
. ./include.ctest.sh
|
||||
|
||||
# Define a common label for all the tmp files
|
||||
label="bufr_ecc-147_test"
|
||||
|
||||
tempBufr=temp.$label.bufr
|
||||
tempFilt=temp.$label.filt
|
||||
|
||||
cat > $tempFilt <<EOF
|
||||
set unpack=1;
|
||||
set relativeHumidity=27;
|
||||
set horizontalVisibility=1500;
|
||||
set pack=1;
|
||||
write;
|
||||
EOF
|
||||
|
||||
input="${data_dir}/bufr/syno_1.bufr"
|
||||
${tools_dir}/codes_bufr_filter -o $tempBufr $tempFilt $input
|
||||
# This part of the test is meant to fail
|
||||
set +e
|
||||
${tools_dir}/bufr_compare $tempBufr $input
|
||||
status=$?
|
||||
set -e
|
||||
if [ $status -eq 0 ]; then
|
||||
# compare should have failed and returned a non-zero exit code
|
||||
exit 1
|
||||
fi
|
||||
# Now blacklist the failing keys and it should pass
|
||||
${tools_dir}/bufr_compare -b relativeHumidity,horizontalVisibility $tempBufr $input
|
||||
|
||||
# Clean up
|
||||
rm -f $tempFilt $tempBufr
|
|
@ -0,0 +1,47 @@
|
|||
#!/bin/sh
|
||||
# (C) Copyright 2005- ECMWF.
|
||||
#
|
||||
# This software is licensed under the terms of the Apache Licence Version 2.0
|
||||
# which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
|
||||
#
|
||||
# In applying this licence, ECMWF does not waive the privileges and immunities granted to it by
|
||||
# virtue of its status as an intergovernmental organisation nor does it submit to any jurisdiction.
|
||||
#
|
||||
|
||||
. ./include.ctest.sh
|
||||
|
||||
# Define a common label for all the tmp files
|
||||
label="bufr_ecc-389_test"
|
||||
|
||||
fLog=${label}".log"
|
||||
tempBufr=temp.$label.bufr
|
||||
tempFilt=temp.$label.filt
|
||||
tempRef=temp.$label.ref
|
||||
tempOut=temp.$label.out
|
||||
|
||||
cat > $tempFilt <<EOF
|
||||
set numberOfSubsets=2;
|
||||
set unexpandedDescriptors={310008};
|
||||
set #14#brightnessTemperature={266.53, 266.53000000001};
|
||||
set pack=1;
|
||||
write;
|
||||
EOF
|
||||
|
||||
input="${data_dir}/bufr/amsu_55.bufr"
|
||||
${tools_dir}/codes_bufr_filter -o $tempBufr $tempFilt $input
|
||||
|
||||
cat > $tempFilt <<EOF
|
||||
set unpack=1;
|
||||
print "[#14#brightnessTemperature]";
|
||||
EOF
|
||||
|
||||
${tools_dir}/codes_bufr_filter $tempFilt $tempBufr > $tempOut
|
||||
|
||||
cat > $tempRef <<EOF
|
||||
266.53
|
||||
EOF
|
||||
diff $tempRef $tempOut
|
||||
|
||||
|
||||
# Clean up
|
||||
rm -f $tempFilt $tempBufr $tempRef $tempOut
|
|
@ -715,35 +715,8 @@ EOF
|
|||
|
||||
${tools_dir}/codes_bufr_filter -o ${fout} $fRules $f 2>> $fLog 1>> $fLog
|
||||
${tools_dir}/bufr_compare $fout ${fout}.ref #2>> $fLog 1>> $fLog
|
||||
rm -f $fout
|
||||
|
||||
#-----------------------------------------------------------
|
||||
# ECC-147
|
||||
#-----------------------------------------------------------
|
||||
cat > $fRules <<EOF
|
||||
set unpack=1;
|
||||
set relativeHumidity=27;
|
||||
set horizontalVisibility=1500;
|
||||
set pack=1;
|
||||
write;
|
||||
EOF
|
||||
|
||||
f="syno_1.bufr"
|
||||
${tools_dir}/codes_bufr_filter -o ${f}.out $fRules $f
|
||||
# This part of the test is meant to fail
|
||||
set +e
|
||||
${tools_dir}/bufr_compare ${f}.out $f
|
||||
status=$?
|
||||
set -e
|
||||
if [ $status -eq 0 ]; then
|
||||
# compare should have failed and returned a non-zero exit code
|
||||
exit 1
|
||||
fi
|
||||
# Now blacklist the failing keys and it should pass
|
||||
${tools_dir}/bufr_compare -b relativeHumidity,horizontalVisibility ${f}.out $f
|
||||
|
||||
rm -f ${f}.out
|
||||
|
||||
rm -f $fRules ${fout} $fLog
|
||||
#-----------------------------------------------------------
|
||||
# Test: access subsets by condition
|
||||
#-----------------------------------------------------------
|
||||
|
@ -1282,39 +1255,6 @@ diff ${f}.log.ref ${f}.log
|
|||
|
||||
rm -f ${f}.log ${f}.log.ref ${f}.out $fLog $fRules
|
||||
|
||||
#-----------------------------------------------------------
|
||||
# Test: fix for ECC-389
|
||||
#-----------------------------------------------------------
|
||||
cat > $fRules <<EOF
|
||||
set numberOfSubsets=2;
|
||||
set unexpandedDescriptors={310008};
|
||||
set #14#brightnessTemperature={266.53,266.53000000001};
|
||||
set pack=1;
|
||||
write;
|
||||
EOF
|
||||
|
||||
f="amsu_55.bufr"
|
||||
|
||||
echo "Test: fix for ECC-389" >> $fLog
|
||||
echo "file: $f" >> $fLog
|
||||
|
||||
${tools_dir}/codes_bufr_filter -o ${f}.out $fRules $f
|
||||
|
||||
cat > $fRules <<EOF
|
||||
set unpack=1;
|
||||
print "[#14#brightnessTemperature]";
|
||||
EOF
|
||||
|
||||
${tools_dir}/codes_bufr_filter $fRules ${f}.out > ${f}.log
|
||||
|
||||
cat > ${f}.log.ref <<EOF
|
||||
266.53
|
||||
EOF
|
||||
|
||||
diff ${f}.log.ref ${f}.log
|
||||
|
||||
rm -f ${f}.log ${f}.log.ref ${f}.out $fLog $fRules
|
||||
|
||||
#-----------------------------------------------------------
|
||||
# Test: change width using operator 201YYY
|
||||
#-----------------------------------------------------------
|
||||
|
|
Loading…
Reference in New Issue