From 3e98d13d625f3a13fb183ee44627ab9e65dca378 Mon Sep 17 00:00:00 2001 From: David Oberhollenzer Date: Sat, 31 Oct 2020 17:27:50 +0100 Subject: Add a test case for tar2sqfs root becomes file & link filtering Signed-off-by: David Oberhollenzer --- tests/test_tar_sqfs.sh.in | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'tests/test_tar_sqfs.sh.in') diff --git a/tests/test_tar_sqfs.sh.in b/tests/test_tar_sqfs.sh.in index 2c8e675..c23a217 100755 --- a/tests/test_tar_sqfs.sh.in +++ b/tests/test_tar_sqfs.sh.in @@ -3,6 +3,7 @@ set -e TARDIR="@abs_top_srcdir@/tests/tar" +TARDIR2="@abs_top_srcdir@/tests/tar2sqfs" SHA512FILE="@abs_top_srcdir@/tests/tar/sqfs.sha512" TAR2SQFS="@abs_top_builddir@/tar2sqfs" @@ -10,6 +11,7 @@ if [ ! -f "$TAR2SQFS" -a -f "${TAR2SQFS}.exe" ]; then TAR2SQFS="${TAR2SQFS}.exe" fi +# process tar files used for conformance tests for filename in $(find "$TARDIR" -name "*.tar" | grep -v ".*/file-size/.*"); do dir="$(dirname $filename | sed -n -e 's;.*/tests/;tests/;p')" imgname="$dir/$(basename $filename .tar).sqfs" @@ -18,8 +20,21 @@ for filename in $(find "$TARDIR" -name "*.tar" | grep -v ".*/file-size/.*"); do "$TAR2SQFS" --defaults mtime=0 -c gzip -q "$imgname" < "$filename" done +# edge case test +filename="$TARDIR2/simple.tar" +dir="$(dirname $filename | sed -n -e 's;.*/tests/;tests/;p')" +imgname="$dir/root-becomes.sqfs" + +mkdir -p "$dir" +"$TAR2SQFS" --root-becomes foo --defaults mtime=0 \ + -c gzip -q "$imgname" < "$filename" + +# verify sha512sum -c "$SHA512FILE" +# cleanup +rm "$dir/root-becomes.sqfs" + for filename in $(find "$TARDIR" -name "*.tar" | grep -v ".*/file-size/.*"); do dir="$(dirname $filename | sed -n -e 's;.*/tests/;tests/;p')" imgname="$dir/$(basename $filename .tar).sqfs" -- cgit v1.2.3