if test -x $RESIZE2FS_EXE; then

FSCK_OPT=-yf
OUT=$test_name.log
if [ -f $test_dir/expect.gz ]; then
	EXP=tmp_expect
	gunzip < $test_dir/expect.gz > $EXP1
else
	EXP=$test_dir/expect
fi

cp /dev/null $OUT

dd if=/dev/zero of=$TMPFILE bs=1k count=512 > /dev/null 2>&1

echo mke2fs -q -F -o Linux -b 1024 -g 256 test.img 1024 > $OUT
$MKE2FS -q -F -o Linux -b 1024 -g 256 $TMPFILE 1024 2>&1 \
	| sed -e '1d' | grep -v "automatically checked" | 
	grep -v "whichever comes first" >> $OUT 

echo resize2fs -p test.img 10000 >> $OUT
$RESIZE2FS -p $TMPFILE 10000 2>&1 | sed -e '1d' >> $OUT

$FSCK $FSCK_OPT  -N test_filesys $TMPFILE > $OUT.new 2>&1
status=$?
echo Exit status is $status >> $OUT.new
sed -e '1d' $OUT.new | sed -e '/^JFS DEBUG:/d'  | tr -d \\015 >> $OUT
rm -f $OUT.new

$DEBUGFS -R "set_super_value lastcheck 0" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value hash_seed null" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value mkfs_time 0" -w $TMPFILE >/dev/null 2>&1
$TUNE2FS -c 20 -U clear $TMPFILE  >/dev/null 2>&1

echo dumpe2fs test.img >> $OUT
$DUMPE2FS $TMPFILE 2>&1 | sed -f $cmd_dir/filter_dumpe2fs >> $OUT

echo "--------------------------------" >> $OUT

echo resize2fs -p test.img 20000 >> $OUT
$RESIZE2FS -p $TMPFILE 20000 2>&1 | sed -e '1d' >> $OUT

$FSCK $FSCK_OPT  -N test_filesys $TMPFILE > $OUT.new 2>&1
status=$?
echo Exit status is $status >> $OUT.new
sed -e '1d' $OUT.new | sed -e '/^JFS DEBUG:/d'  | tr -d \\015 >> $OUT
rm -f $OUT.new

$DEBUGFS -R "set_super_value lastcheck 0" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value hash_seed null" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value mkfs_time 0" -w $TMPFILE >/dev/null 2>&1
$TUNE2FS -c 20 -U clear $TMPFILE  >/dev/null 2>&1

echo dumpe2fs test.img >> $OUT
$DUMPE2FS $TMPFILE 2>&1 | sed -f $cmd_dir/filter_dumpe2fs >> $OUT

echo "--------------------------------" >> $OUT

echo resize2fs -p test.img 30000 >> $OUT
$RESIZE2FS -p $TMPFILE 30000 2>&1 | sed -e '1d' >> $OUT

$FSCK $FSCK_OPT  -N test_filesys $TMPFILE > $OUT.new 2>&1
status=$?
echo Exit status is $status >> $OUT.new
sed -e '1d' $OUT.new | sed -e '/^JFS DEBUG:/d'  | tr -d \\015 >> $OUT
rm -f $OUT.new

$DEBUGFS -R "set_super_value lastcheck 0" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value hash_seed null" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value mkfs_time 0" -w $TMPFILE >/dev/null 2>&1
$TUNE2FS -c 20 -U clear $TMPFILE  >/dev/null 2>&1

echo dumpe2fs test.img >> $OUT
$DUMPE2FS $TMPFILE 2>&1 | sed -f $cmd_dir/filter_dumpe2fs >> $OUT

echo "--------------------------------" >> $OUT

echo resize2fs -p test.img 40000 >> $OUT
$RESIZE2FS -p $TMPFILE 40000 2>&1 | sed -e '1d' >> $OUT

$FSCK $FSCK_OPT  -N test_filesys $TMPFILE > $OUT.new 2>&1
status=$?
echo Exit status is $status >> $OUT.new
sed -e '1d' $OUT.new | sed -e '/^JFS DEBUG:/d'  | tr -d \\015 >> $OUT
rm -f $OUT.new

$DEBUGFS -R "set_super_value lastcheck 0" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value hash_seed null" -w $TMPFILE >/dev/null 2>&1
$DEBUGFS -R "set_super_value mkfs_time 0" -w $TMPFILE >/dev/null 2>&1
$TUNE2FS -c 20 -U clear $TMPFILE  >/dev/null 2>&1

echo dumpe2fs test.img >> $OUT
$DUMPE2FS $TMPFILE 2>&1 | sed -f $cmd_dir/filter_dumpe2fs >> $OUT

rm -f $test_name.ok $test_name.failed $TMPFILE

cmp -s $OUT $EXP
status=$?

if [ "$status" = 0 ] ; then
	echo "ok"
	touch $test_name.ok
else
	echo "failed"
	diff $DIFF_OPTS $EXP $OUT > $test_name.failed
	rm -f tmp_expect
fi

unset IMAGE FSCK_OPT OUT EXP

else #if test -x $RESIZE2FS; then
	rm -f $test_name.ok $test_name.failed
	echo "skipped"
fi 
