X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=tests%2Frename04.at;fp=tests%2Frename04.at;h=3e9eb1a239a08f2f0b932fc55c556a73f782bc2d;hb=d3daaa199aca7497bb507f92b693c8457353f96a;hp=0000000000000000000000000000000000000000;hpb=01e54b91809c75d91ebaefacc7481f4872a8fac2;p=tar diff --git a/tests/rename04.at b/tests/rename04.at new file mode 100644 index 0000000..3e9eb1a --- /dev/null +++ b/tests/rename04.at @@ -0,0 +1,83 @@ +# Process this file with autom4te to create testsuite. -*- Autotest -*- + +# Test suite for GNU tar. +# Copyright (C) 2008 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 3, 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. + +# Description: Up to version 1.20, when storing a record for renamed +# directory in an incremental archive, tar incorrectly flagged all its +# subdirectories as renamed, which led to problems at archive extraction. +# References: <00a401c8ecc0$56b7ef30$6a17a8c0@inti.com> +# Reported by: Enric Hernandez + +AT_SETUP([renamed directory containing subdirectories]) +AT_KEYWORDS([incremental rename04 rename]) + +AT_TAR_CHECK([ +AT_SORT_PREREQ + +decho Creating directory structure +mkdir directory +mkdir directory/subdir +genfile --file=directory/file + +decho Creating initial archive +tar -cf archive.1 -g db.1 directory + +decho Renaming +mv directory dir + +decho Creating incremental archive +cp db.1 db.2 +tar -cf archive.2 -g db.2 dir + +mv dir orig + +decho First restore +tar -xf archive.1 -g db.1 +find directory | sort + +decho Second restore +tar -xf archive.2 -g db.2 +find dir | sort +], +[0], +[Creating directory structure +Creating initial archive +Renaming +Creating incremental archive +First restore +directory +directory/file +directory/subdir +Second restore +dir +dir/subdir +], +[Creating directory structure +Creating initial archive +Renaming +Creating incremental archive +First restore +Second restore +],[],[],[gnu, oldgnu, posix]) + +AT_CLEANUP + +# End of rename04.at + +