diff options
Diffstat (limited to 't/t5000-tar-tree.sh')
-rwxr-xr-x | t/t5000-tar-tree.sh | 35 |
1 files changed, 22 insertions, 13 deletions
diff --git a/t/t5000-tar-tree.sh b/t/t5000-tar-tree.sh index 41cd6094ac..8337a1f2cf 100755 --- a/t/t5000-tar-tree.sh +++ b/t/t5000-tar-tree.sh @@ -30,6 +30,26 @@ GUNZIP=${GUNZIP:-gzip -d} SUBSTFORMAT=%H%n +check_tar() { + tarfile=$1.tar + listfile=$1.lst + dir=$1 + dir_with_prefix=$dir/$2 + + test_expect_success ' extract tar archive' ' + (mkdir $dir && cd $dir && "$TAR" xf -) <$tarfile + ' + + test_expect_success ' validate filenames' ' + (cd ${dir_with_prefix}a && find .) | sort >$listfile && + test_cmp a.lst $listfile + ' + + test_expect_success ' validate file contents' ' + diff -r a ${dir_with_prefix}a + ' +} + test_expect_success \ 'populate workdir' \ 'mkdir a && @@ -81,6 +101,8 @@ test_expect_success \ 'git archive' \ 'git archive HEAD >b.tar' +check_tar b + test_expect_success \ 'git tar-tree' \ 'git tar-tree HEAD >b2.tar' @@ -125,19 +147,6 @@ test_expect_success \ test_cmp .git/$(git symbolic-ref HEAD) b.commitid' test_expect_success \ - 'extract tar archive' \ - '(mkdir b && cd b && "$TAR" xf -) <b.tar' - -test_expect_success \ - 'validate filenames' \ - '(cd b/a && find .) | sort >b.lst && - test_cmp a.lst b.lst' - -test_expect_success \ - 'validate file contents' \ - 'diff -r a b/a' - -test_expect_success \ 'git tar-tree with prefix' \ 'git tar-tree HEAD prefix >c.tar' |