1 # Process this file with autom4te to create testsuite. -*- Autotest -*-
3 # Test suite for GNU tar.
4 # Copyright 2014-2024 Free Software Foundation, Inc.
6 # This file is part of GNU tar.
8 # GNU tar is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 3 of the License, or
11 # (at your option) any later version.
13 # GNU tar is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
18 # You should have received a copy of the GNU General Public License
19 # along with this program. If not, see <http://www.gnu.org/licenses/>.
21 AT_SETUP([storing sparse file using seek method])
22 AT_KEYWORDS([sparse sparse06 chdir])
24 m4_define([check_pattern],[
25 rm -rf out archive.tar smallsparse && mkdir out
26 genfile --sparse --quiet --file smallsparse $1 || AT_SKIP_TEST
27 tar -cSf archive.tar smallsparse
28 tar -xf archive.tar -C out
29 cmp smallsparse out/smallsparse
35 TAR_OPTIONS="$TAR_OPTIONS --hole-detection=seek"
36 genfile --sparse --file bigsparse 0 ABC 8G DEF || AT_SKIP_TEST
38 test $? -eq 0 || exit 1
40 check_pattern([0 ABC])
41 check_pattern([0 ABC 10M])
42 check_pattern([0 ABC 10M DEF])
45 check_pattern([10M ABC])
46 check_pattern([10M ABC 20M])
48 check_pattern([10M DEF 20M GHI 30M JKL 40M])