Restructure the remfiles testsuite.

This commit is contained in:
Nathan Stratton Treadway
2014-07-27 23:27:28 +03:00
committed by Sergey Poznyakoff
parent a5db4ba5cb
commit fcde08534b
9 changed files with 67 additions and 66 deletions

View File

@@ -37,7 +37,7 @@ tar -cf foo.tar -C foo file -C $DIR/bar file
decho A
find . | sort
decho B
tar -rvf foo.tar --remove-files -C foo file -C ../bar file
tar -rvf foo.tar --remove-files -C foo file -C $DIR/bar file
decho C
find . | sort
],

View File

@@ -18,11 +18,11 @@
# Description: ensure tar correctly respects -C option when deleting
# files due to the --remove-files option.
#
# This case checks the use of a relative -C option followed by an absolute -C,
# This case checks the use of an absolute -C option followed by a relative -C,
# in --create/non-incremental mode.
#
AT_SETUP([remove-files with -C:rel,abs in -c/non-incr. mode])
AT_SETUP([remove-files with -C:abs,rel in -c/non-incr. mode])
AT_KEYWORDS([create remove-files remfiles07 remfiles07a])
AT_TAR_CHECK([
@@ -34,7 +34,7 @@ echo foo/file > foo/file
echo bar/file > bar/file
DIR=`pwd`
decho A
tar -cvf foo.tar --remove-files -C foo file -C $DIR/bar file
tar -cvf foo.tar --remove-files -C $DIR/foo file -C ../bar file
decho B
find . | sort
],

View File

@@ -18,11 +18,11 @@
# Description: ensure tar correctly respects -C option when deleting
# files due to the --remove-files option.
#
# This case checks the use of a relative -C option followed by an absolute -C,
# This case checks the use of an absolute -C option followed by a relative -C,
# in --create/incremental mode.
#
AT_SETUP([remove-files with -C:rel,abs in -c/incr. mode])
AT_SETUP([remove-files with -C:abs,rel in -c/incr. mode])
AT_KEYWORDS([create incremental remove-files remfiles07 remfiles07b])
AT_TAR_CHECK([
@@ -34,7 +34,7 @@ echo foo/file > foo/file
echo bar/file > bar/file
DIR=`pwd`
decho A
tar -cvf foo.tar --incremental --remove-files -C foo file -C $DIR/bar file
tar -cvf foo.tar --incremental --remove-files -C $DIR/foo file -C ../bar file
decho B
find . | sort
],

View File

@@ -18,11 +18,11 @@
# Description: ensure tar correctly respects -C option when deleting
# files due to the --remove-files option.
#
# This case checks the use of a relative -C option followed by an absolute -C,
# This case checks the use of an absolute -C option followed by a relative -C,
# in --append mode.
#
AT_SETUP([remove-files with -C:rel,abs in -r mode])
AT_SETUP([remove-files with -C:abs,rel in -r mode])
AT_KEYWORDS([create append remove-files remfiles07 remfiles07c])
AT_TAR_CHECK([
@@ -33,11 +33,11 @@ echo file > file
echo foo/file > foo/file
echo bar/file > bar/file
DIR=`pwd`
tar -cf foo.tar -C foo file -C $DIR/bar file
tar -cf foo.tar -C $DIR/foo file -C ../bar file
decho A
find . | sort
decho B
tar -rvf foo.tar --remove-files -C foo file -C $DIR/bar file
tar -rvf foo.tar --remove-files -C $DIR/foo file -C ../bar file
decho C
find . | sort
],

View File

@@ -15,38 +15,37 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Description: ensure tar correctly respects -C option when deleting
# files due to the --remove-files option.
# Description: If tar 1.26 was called with the --remove-files option and told
# to archive (and thus delete) two subdirectories where the second was
# specified relative to the first, it would be unable to delete the
# second directory (and its contents), since the relative path would no
# longer be valid once the first directory was deleted.
#
# This case checks the use of an absolute -C option followed by a relative -C,
# This case checks for successful deletion of all archived items
# in --create/non-incremental mode.
#
AT_SETUP([remove-files with -C:abs,rel in -c/non-incr. mode])
AT_SETUP([remove-files deleting two subdirs in -c/non-incr. mode])
AT_KEYWORDS([create remove-files remfiles08 remfiles08a])
AT_TAR_CHECK([
AT_SORT_PREREQ
mkdir foo
mkdir bar
echo file > file
echo foo/file > foo/file
echo bar/file > bar/file
DIR=`pwd`
echo foo/foo_file > foo/foo_file
echo bar/bar_file > bar/bar_file
decho A
tar -cvf foo.tar --remove-files -C $DIR/foo file -C ../bar file
tar -cvf foo.tar --remove-files -C foo . -C ../bar .
decho B
find . | sort
find .
],
[0],
[A
file
file
./
./foo_file
./
./bar_file
B
.
./bar
./file
./foo
./foo.tar
],
[A

View File

@@ -15,41 +15,47 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Description: ensure tar correctly respects -C option when deleting
# files due to the --remove-files option.
# Description: If tar 1.26 was called with the --remove-files option and told
# to archive (and thus delete) two subdirectories where the second was
# specified relative to the first, it would be unable to delete the
# second directory (and its contents), since the relative path would no
# longer be valid once the first directory was deleted.
#
# This case checks the use of an absolute -C option followed by a relative -C,
# This case checks for successful deletion of all archived items
# in --create/incremental mode.
#
# Note: tar 1.27 fails this test case due to a more general issue
# archving-and-removing a full directory tree when run in incremental
# mode; see remfiles09b.at for that specific test case.
AT_SETUP([remove-files with -C:abs,rel in -c/incr. mode])
AT_SETUP([remove-files deleting two subdirs in -c/incr. mode])
AT_KEYWORDS([create incremental remove-files remfiles08 remfiles08b])
AT_XFAIL_IF(true) # we expect to fail in tar 1.27
AT_TAR_CHECK([
AT_SORT_PREREQ
mkdir foo
mkdir bar
echo file > file
echo foo/file > foo/file
echo bar/file > bar/file
DIR=`pwd`
echo foo/foo_file > foo/foo_file
echo bar/bar_file > bar/bar_file
decho A
tar -cvf foo.tar --incremental --remove-files -C $DIR/foo file -C ../bar file
tar -cvf foo.tar --incremental --remove-files -C foo . -C ../bar .
decho B
find . | sort
find .
],
[0],
[A
file
file
./
./
./foo_file
./bar_file
B
.
./bar
./file
./foo
./foo.tar
],
[A
tar: .: Directory is new
tar: .: Directory is new
B
],[],[],[gnu])

View File

@@ -15,49 +15,48 @@
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# Description: ensure tar correctly respects -C option when deleting
# files due to the --remove-files option.
# Description: If tar 1.26 was called with the --remove-files option and told
# to archive (and thus delete) two subdirectories where the second was
# specified relative to the first, it would be unable to delete the
# second directory (and its contents), since the relative path would no
# longer be valid once the first directory was deleted.
#
# This case checks the use of an absolute -C option followed by a relative -C,
# This case checks for successful deletion of all archived items
# in --append mode.
#
AT_SETUP([remove-files with -C:abs,rel in -r mode])
AT_SETUP([remove-files deleting two subdirs in -r mode])
AT_KEYWORDS([create append remove-files remfiles08 remfiles08c])
AT_TAR_CHECK([
AT_SORT_PREREQ
mkdir foo
mkdir bar
echo file > file
echo foo/file > foo/file
echo bar/file > bar/file
DIR=`pwd`
tar -cf foo.tar -C $DIR/foo file -C ../bar file
echo foo/foo_file > foo/foo_file
echo bar/bar_file > bar/bar_file
tar -cf foo.tar -C foo . -C ../bar .
decho A
find . | sort
decho B
tar -rvf foo.tar --remove-files -C $DIR/foo file -C ../bar file
tar -rvf foo.tar --remove-files -C foo . -C ../bar .
decho C
find . | sort
find .
],
[0],
[A
.
./bar
./bar/file
./file
./bar/bar_file
./foo
./foo.tar
./foo/file
./foo/foo_file
B
file
file
./
./foo_file
./
./bar_file
C
.
./bar
./file
./foo
./foo.tar
],
[A

View File

@@ -31,7 +31,7 @@ echo foo/file > foo/file
decho A
tar -cvf foo.tar --remove-files foo
decho B
find .
find .
],
[0],
[A

View File

@@ -32,12 +32,10 @@ AT_KEYWORDS([create incremental remove-files remfiles09 remfiles09b])
AT_XFAIL_IF(true) # we expect to fail in tar 1.27
AT_TAR_CHECK([
AT_SORT_PREREQ
mkdir foo
echo foo/file > foo/file
decho A
tar -cvf foo.tar --incremental --remove-files foo
TARSTAT=$?
decho B
find .
],
@@ -47,7 +45,6 @@ foo/
foo/file
B
.
./foo
./foo.tar
],
[A