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_wmo_tables
|
||||||
bufr_extract_headers
|
bufr_extract_headers
|
||||||
extract_offsets
|
extract_offsets
|
||||||
|
bufr_ecc-147
|
||||||
|
bufr_ecc-389
|
||||||
bufr_ecc-673
|
bufr_ecc-673
|
||||||
bufr_ecc-428
|
bufr_ecc-428
|
||||||
bufr_ecc-286
|
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}/codes_bufr_filter -o ${fout} $fRules $f 2>> $fLog 1>> $fLog
|
||||||
${tools_dir}/bufr_compare $fout ${fout}.ref #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
|
# 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
|
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
|
# Test: change width using operator 201YYY
|
||||||
#-----------------------------------------------------------
|
#-----------------------------------------------------------
|
||||||
|
|
Loading…
Reference in New Issue