if test -x $RESIZE2FS_EXE -a -x $DEBUGFS_EXE; then

FSCK_OPT=-fn
OUT=$test_name.log
EXP=$test_dir/expect
CONF=$TMPFILE.conf

#gzip -d < $EXP.gz > $EXP

cat > $CONF << ENDL
[fs_types]
	ext4h = {
		features = has_journal,extent,huge_file,uninit_bg,dir_nlink,extra_isize,sparse_super,filetype,dir_index,ext_attr,^resize_inode,^meta_bg,^flex_bg
		blocksize = 1024
		inode_size = 256
		make_hugefiles = true
		hugefiles_dir = /
		hugefiles_slack = 0
		hugefiles_name = aaaaa
		hugefiles_digits = 4
		hugefiles_size = 1M
		zero_hugefiles = false
	}
ENDL

echo "resize2fs test" > $OUT

MKE2FS_CONFIG=$CONF $MKE2FS -F -T ext4h $TMPFILE 786432 >> $OUT 2>&1
rm -rf $CONF

# check
$FSCK $FSCK_OPT -N test_filesys $TMPFILE >> $OUT 2>&1
status=$?
echo Exit status is $status >> $OUT

# convert it
echo "resize2fs -b test.img" >> $OUT
$RESIZE2FS -b -f $TMPFILE 2>&1 >> $OUT 2>&1
$DUMPE2FS -g $TMPFILE 2>&1 >> $OUT.before 2> /dev/null

# grow it
echo "resize2fs test.img" >> $OUT
dd if=/dev/zero of=$TMPFILE conv=notrunc bs=1 count=1 seek=1207959552 2> /dev/null
$RESIZE2FS -f $TMPFILE 2>&1 >> $OUT 2>&1
status=$?
echo Exit status is $status >> $OUT

# dump and check
$DUMPE2FS -g $TMPFILE 2>&1 >> $OUT.after 2> /dev/null
echo "Change in FS metadata:" >> $OUT
diff -u $OUT.before $OUT.after | tail -n +3 >> $OUT
$FSCK $FSCK_OPT -N test_filesys $TMPFILE >> $OUT 2>&1
status=$?
echo Exit status is $status >> $OUT

rm $TMPFILE

#
# Do the verification
#

sed -f $cmd_dir/filter.sed -e "s;$TMPFILE;test.img;" -e 's/test_filesys:.*//g' < $OUT > $OUT.new
mv $OUT.new $OUT

cmp -s $OUT $EXP
status=$?

if [ "$status" = 0 ] ; then
	echo "$test_name: $test_description: ok"
	touch $test_name.ok
else
	echo "$test_name: $test_description: failed"
	diff $DIFF_OPTS $EXP $OUT > $test_name.failed
fi

rm $OUT.before $OUT.after

unset IMAGE FSCK_OPT OUT EXP CONF

else #if test -x $RESIZE2FS_EXE -a -x $DEBUGFS_EXE; then
	echo "$test_name: $test_description: skipped"
fi

