]> Dogcows Code - chaz/tar/commitdiff
Restructure the remfiles testsuite.
authorNathan Stratton Treadway <nathanst@ontko.com>
Sun, 27 Jul 2014 20:27:28 +0000 (23:27 +0300)
committerSergey Poznyakoff <gray@gnu.org>
Sun, 27 Jul 2014 20:27:28 +0000 (23:27 +0300)
tests/remfiles06c.at
tests/remfiles07a.at
tests/remfiles07b.at
tests/remfiles07c.at
tests/remfiles08a.at
tests/remfiles08b.at
tests/remfiles08c.at
tests/remfiles09a.at
tests/remfiles09b.at

index 6cb2f5073b6a6ee40e31046a38581936dcb6ad79..78a70e49176964f2b4a12d5f9d36ecbd940f771e 100644 (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
 ],
index 36c42e0d30e7db1292e0e781cd41c25368f27e5a..f3131f7791c2d9c37abfa96839d3b5b78c90d35f 100644 (file)
 # 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
 ],
index e3aa4542d4af47a565bf4cc39efbc190db8eebb6..c5db0d5a9137ffa5eb53b3ad2c607812662a7283 100644 (file)
 # 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
 ],
index f8ac0baa3a14afa4e073058b205c392228f32812..9b4139a4e47970b01bdd9b96d9ecd73361e562be 100644 (file)
 # 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
 ],
index edb5170aee874b3658118472a8d00ea05767b90b..8db9f717513a57e2bd01a8e1106828586b6be21d 100644 (file)
 # 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
index f05b7f8d5bd46888a4ac991950935ec89c602eea..13beaf42b98965379b647ceaef3e4ea99f1a4a49 100644 (file)
 # 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])
 
index f9730b3041d91bebb429379e74b51b8a1914246d..b52b0328bbcd2a495923ee7d512177383193e5f2 100644 (file)
 # 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
index dfd9e5ef8a2ee6e7d7099857e31aa91b78616b2f..5f96737eed64ba72dead4aade290185d58e32093 100644 (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
index 26e5624e136907f15779c25de9864e7b0cacc4b6..45b8440c9c0f5de9545a217a6f9870405f9c8f0e 100644 (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
This page took 0.031897 seconds and 4 git commands to generate.