mirror of
https://github.com/HDFGroup/hdf5.git
synced 2025-03-31 17:10:47 +08:00
[svn-r22214] Feature: HDFFV-7981
Added test to verify h5repack --metadata option produces bigger size file. Tested: h5committest (koala, jam, ostrich).
This commit is contained in:
parent
ea8166cf62
commit
b51ffb25fe
@ -147,20 +147,25 @@ COPY_TESTFILES_TO_TESTDIR()
|
||||
done
|
||||
}
|
||||
|
||||
# Print a $* message left justified in a field of 70 characters
|
||||
#
|
||||
MESSAGE() {
|
||||
SPACES=" "
|
||||
echo "$* $SPACES" | cut -c1-70 | tr -d '\012'
|
||||
}
|
||||
|
||||
# Print a line-line message left justified in a field of 70 characters
|
||||
# beginning with the word "Testing".
|
||||
#
|
||||
TESTING() {
|
||||
SPACES=" "
|
||||
echo "Testing $* $SPACES" | cut -c1-70 | tr -d '\012'
|
||||
MESSAGE "Testing $*"
|
||||
}
|
||||
|
||||
# Print a line-line message left justified in a field of 70 characters
|
||||
# beginning with the word "Verifying".
|
||||
#
|
||||
VERIFY() {
|
||||
SPACES=" "
|
||||
echo "Verifying h5diff output $* $SPACES" | cut -c1-70 | tr -d '\012'
|
||||
MESSAGE "Verifying h5diff output $*"
|
||||
}
|
||||
|
||||
# Print a message that a test has been skipped (because a required filter
|
||||
@ -385,6 +390,49 @@ TOOLTESTV()
|
||||
rm -f $actual $actual_err $actual_sav
|
||||
}
|
||||
|
||||
# TOOLTEST_META:
|
||||
# Test metadata block size option.
|
||||
# Reason to create a function here is to localize all special steps related to
|
||||
# metadata block size option in one place. This is a quick solution. More
|
||||
# thought out solution needed when there is more time.
|
||||
#
|
||||
# $1: test input file
|
||||
# $2:$: metadata options (either "-M size" or "--metadata_block_size=size")
|
||||
#
|
||||
# Algorithm:
|
||||
# Run it once without the metadata option ($2-$);
|
||||
# Save the result output file;
|
||||
# Run it second time with the metadata option;
|
||||
# Verify the output file of second run is larger than the one of 1st run.
|
||||
TOOLTEST_META()
|
||||
{
|
||||
input_file=$1
|
||||
outfile="$TESTDIR/out.$1"
|
||||
|
||||
# Use TOOLTEST_MAIN to run because it does not remove the output file.
|
||||
# 1st run, without metadata option
|
||||
TOOLTEST_MAIN $1
|
||||
# get the size of the first output file
|
||||
size1=`wc -c $outfile | cut -d' ' -f1`
|
||||
|
||||
# 2nd run with metadata option
|
||||
TOOLTEST_MAIN $*
|
||||
# get the size of the second output file
|
||||
size2=`wc -c $outfile | cut -d' ' -f1`
|
||||
|
||||
# verify sizes.
|
||||
MESSAGE "Verify the sizes of both output files ($size1 vs $size2)"
|
||||
if [ $size1 -lt $size2 ]; then
|
||||
# pass
|
||||
echo " PASSED"
|
||||
else
|
||||
#fail
|
||||
echo "*FAILED*"
|
||||
fi
|
||||
|
||||
rm -f $outfile
|
||||
}
|
||||
|
||||
# This is different from $srcdir/../../bin/output_filter.sh
|
||||
STDOUT_FILTER() {
|
||||
result_file=$1
|
||||
@ -809,8 +857,8 @@ TOOLTEST h5repack_attr_refs.h5
|
||||
TOOLTEST h5diff_attr1.h5
|
||||
|
||||
# tests for metadata block size option ('-M')
|
||||
TOOLTEST h5repack_layout.h5 -M 8192
|
||||
TOOLTEST h5repack_layout.h5 --metadata_block_size=8192
|
||||
TOOLTEST_META h5repack_layout.h5 -M 8192
|
||||
TOOLTEST_META h5repack_layout.h5 --metadata_block_size=8192
|
||||
|
||||
if test $nerrors -eq 0 ; then
|
||||
echo "All $TESTNAME tests passed."
|
||||
|
Loading…
x
Reference in New Issue
Block a user