diff options
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | configure.ac | 2 | ||||
-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 |
5 files changed, 39 insertions, 1 deletions
@@ -41,7 +41,7 @@ ltmain.sh m4/libtool.m4 m4/lt*.m4 Doxyfile -tests/cantrbry.sh +tests/*.sh /mknastyfs /mk42sqfs /list_files diff --git a/configure.ac b/configure.ac index 9ec1f6a..100539a 100644 --- a/configure.ac +++ b/configure.ac @@ -7,6 +7,7 @@ AC_PROG_CC([cc gcc clang]) LT_INIT([win32-dll]) AC_PROG_CC_C99 AC_PROG_INSTALL +AC_PROG_SED AC_SYS_LARGEFILE AC_CANONICAL_HOST @@ -247,6 +248,7 @@ AC_CONFIG_FILES([lib/sqfs/libsquashfs0.pc]) AC_CONFIG_FILES([Doxyfile]) AC_CONFIG_FILES([tests/cantrbry.sh], [chmod +x tests/cantrbry.sh]) AC_CONFIG_FILES([tests/test_tar_sqfs.sh], [chmod +x tests/test_tar_sqfs.sh]) +AC_CONFIG_FILES([tests/pack_dir_root.sh], [chmod +x tests/pack_dir_root.sh]) AC_OUTPUT([Makefile]) 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 |