From: Sergey Poznyakoff Date: Thu, 23 Jun 2005 12:15:50 +0000 (+0000) Subject: New test. X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Ftar;a=commitdiff_plain;h=fb1b9e3d0fa6f86344b5f1d7e34014bd8c74f67e New test. --- diff --git a/tests/sparse03.at b/tests/sparse03.at new file mode 100644 index 0000000..6ed8a57 --- /dev/null +++ b/tests/sparse03.at @@ -0,0 +1,56 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2005 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. + +AT_SETUP([Storing sparse files > 8G]) +AT_KEYWORDS([sparse03]) + +# Tar 1.15.1 incorrectly computed sparse member size if the extended +# PAX header contained size keyword. +# References: <87vf46nb36.fsf@penguin.cs.ucla.edu> +# http://lists.gnu.org/archive/html/bug-tar/2005-06/msg00040.html + +AT_TAR_CHECK([ +genfile --length 1000 > begin +genfile --length 1000 > end +genfile --sparse --file sparsefile --block-size 512 8G A +tar -c -f archive --sparse begin sparsefile end || exit 1 +echo separator + +tar tfv archive +echo separator +mkdir directory +tar Cxf directory archive +genfile --stat=name,size sparsefile +cmp sparsefile directory/sparsefile +], +[0], +[stdout], +[],[],[],[posix]) + +RE_CHECK([stdout], +[separator +-rw-r--r-- [^ ][^ ]* *1000 [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9] begin +-rw-r--r-- [^ ][^ ]* *8589935104 [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9] sparsefile +-rw-r--r-- [^ ][^ ]* *1000 [0-9][0-9][0-9][0-9]-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9] end +separator +sparsefile 8589935104 +]) + +AT_CLEANUP