mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/kdave/btrfs-progs.git
synced 2024-12-01 16:14:20 +08:00
btrfs-progs: convert-tests: Add support for custom test scripts
Add support for custom convert test scripts, just like fsck tests. Instead of generic convert tests, we need more specifically created images for new convert tests. This patch provide the needed infrastructure for later convert test cases. Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
97198cd75e
commit
fde5ae2e49
@ -94,6 +94,14 @@ check_prereq()
|
||||
fi
|
||||
}
|
||||
|
||||
check_global_prereq()
|
||||
{
|
||||
which $1 &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
_fail "Failed system wide prerequisities: $1";
|
||||
fi
|
||||
}
|
||||
|
||||
check_image()
|
||||
{
|
||||
local image
|
||||
|
@ -15,6 +15,11 @@ DATASET_SIZE=50
|
||||
|
||||
source $TOP/tests/common
|
||||
|
||||
# Allow child test to use $TOP and $RESULTS
|
||||
export TOP
|
||||
export RESULTS
|
||||
export LANG
|
||||
|
||||
rm -f $RESULTS
|
||||
|
||||
setup_root_helper
|
||||
@ -22,6 +27,25 @@ prepare_test_dev 512M
|
||||
|
||||
CHECKSUMTMP=$(mktemp --tmpdir btrfs-progs-convert.XXXXXXXXXX)
|
||||
|
||||
run_one_test() {
|
||||
local testname
|
||||
|
||||
testname="$1"
|
||||
echo " [TEST/conv] $testname"
|
||||
cd $testname
|
||||
echo "=== Entering $testname" >> $RESULTS
|
||||
if [ -x test.sh ]; then
|
||||
# Difference convert test case needs different tools to restore
|
||||
# and check image, so only support custom test scripts
|
||||
./test.sh
|
||||
if [ $? -ne 0 ]; then
|
||||
_fail "test failed for case $(basename $testname)"
|
||||
fi
|
||||
else
|
||||
_fail "custom test script not found"
|
||||
fi
|
||||
}
|
||||
|
||||
generate_dataset() {
|
||||
|
||||
dataset_type="$1"
|
||||
@ -172,4 +196,11 @@ for feature in '' 'extref' 'skinny-metadata' 'no-holes'; do
|
||||
convert_test "$feature" "ext4 64k nodesize" 65536 mke2fs -t ext4 -b 4096
|
||||
done
|
||||
|
||||
# Test special images
|
||||
for i in $(find $TOP/tests/convert-tests -maxdepth 1 -mindepth 1 -type d \
|
||||
${TEST:+-name "$TEST"} | sort)
|
||||
do
|
||||
run_one_test "$i"
|
||||
done
|
||||
|
||||
rm $CHECKSUMTMP
|
||||
|
Loading…
Reference in New Issue
Block a user