diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-05-03 14:36:16 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2020-05-03 14:36:16 +0200 |
commit | d43b31df6b84e54d0d657fd27b2f2b5734d8f162 (patch) | |
tree | 72ab62a643abacbf302a92280800af9bd9f58213 /tests | |
parent | 5380c605440db063f8b80a2a48b326a8ce9b0d93 (diff) |
Add a simple test script for the gensquashfs packdir + allroot use case
Since this is a fairly common use case, it deserves a simple test case
to check out that e.g. option processing hasn't been botched up (again).
As input directory, the licenses directory is used as it contains no
intermediate build output and should change fairly infrequently.
The test is enabled irregardless of the corpora-test option.
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/Makemodule.am | 4 | ||||
-rwxr-xr-x | tests/pack_dir_root.sh.in | 23 | ||||
-rw-r--r-- | tests/pack_dir_root.txt.ref | 9 |
3 files changed, 36 insertions, 0 deletions
diff --git a/tests/Makemodule.am b/tests/Makemodule.am index f4aca03..14a2cb1 100644 --- a/tests/Makemodule.am +++ b/tests/Makemodule.am @@ -127,6 +127,9 @@ TESTS += test_tar_gnu test_tar_sparse_gnu test_tar_sparse_gnu1 TESTS += test_tar_sparse_gnu2 test_tar_xattr_bsd test_tar_xattr_schily TESTS += test_tar_xattr_schily_bin +check_SCRIPTS += tests/pack_dir_root.sh +TESTS += tests/pack_dir_root.sh + if CORPORA_TESTS check_SCRIPTS += tests/cantrbry.sh tests/test_tar_sqfs.sh TESTS += tests/cantrbry.sh tests/test_tar_sqfs.sh @@ -137,3 +140,4 @@ EXTRA_DIST += $(top_srcdir)/tests/tar $(top_srcdir)/tests/words.txt EXTRA_DIST += $(top_srcdir)/tests/fstree1.txt EXTRA_DIST += $(top_srcdir)/tests/corpus/cantrbry.tar.xz EXTRA_DIST += $(top_srcdir)/tests/corpus/cantrbry.sha512 +EXTRA_DIST += $(top_srcdir)/tests/pack_dir_root.txt.ref diff --git a/tests/pack_dir_root.sh.in b/tests/pack_dir_root.sh.in new file mode 100755 index 0000000..ad0a085 --- /dev/null +++ b/tests/pack_dir_root.sh.in @@ -0,0 +1,23 @@ +#!/bin/sh + +set -e + +LICDIR="@abs_top_srcdir@/licenses" +REFFILE="@abs_top_srcdir@/tests/pack_dir_root.txt.ref" +GENSQFS="@abs_top_builddir@/gensquashfs" +RDSQFS="@abs_top_builddir@/rdsquashfs" +IMAGE="pack_dir_root.sqfs" +SED="@SED@" + +if [ ! -f "$GENSQFS" -a -f "${GENSQFS}.exe" ]; then + GENSQFS="${GENSQFS}.exe" + RDSQFS="${RDSQFS}.exe" +fi + +"$GENSQFS" --all-root --pack-dir "$LICDIR" --defaults mtime=0 \ + -c gzip -q "$IMAGE" + +"$RDSQFS" -l / "$IMAGE" | "$SED" 's/^-[rwx-]* //g' > "${IMAGE}.txt" + +diff "$REFFILE" "${IMAGE}.txt" +rm "$IMAGE" "${IMAGE}.txt" diff --git a/tests/pack_dir_root.txt.ref b/tests/pack_dir_root.txt.ref new file mode 100644 index 0000000..7addf59 --- /dev/null +++ b/tests/pack_dir_root.txt.ref @@ -0,0 +1,9 @@ +0/0 18k GPLv2.txt +0/0 34k GPLv3.txt +0/0 7k LGPLv3.txt +0/0 1k LZ4.txt +0/0 1k hash_table.txt +0/0 1k xxhash.txt +0/0 768 xz.txt +0/0 983 zlib.txt +0/0 1k zstd.txt |