source: trunk/essentials/app-arch/tar/tests/truncate.at

Last change on this file was 3355, checked in by bird, 18 years ago

OS/2 needs 2+ sleeps for file times to change.

File size: 1.8 KB
Line 
1# Process this file with autom4te to create testsuite. -*- Autotest -*-
2
3# Test suite for GNU tar.
4# Copyright (C) 2005 Free Software Foundation, Inc.
5
6# This program is free software; you can redistribute it and/or modify
7# it under the terms of the GNU General Public License as published by
8# the Free Software Foundation; either version 2, or (at your option)
9# any later version.
10
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
19# 02110-1301, USA.
20
21# Tar 1.15.1 incorrectly padded archive members that were truncated during
22# archiving.
23# References: <1115437005.8530.644529@goedel.fjf.gnu.de>
24# http://lists.gnu.org/archive/html/bug-tar/2005-05/msg00008.html
25#
26# The test case is based on the script by Frank Heckenbach <frank@g-n-u.de>
27# Additionally, the test verifies if tar exits with code 1 (file differs).
28
29AT_SETUP([truncate])
30AT_KEYWORDS([truncate filechange])
31
32AT_TAR_CHECK([
33genfile --file foo --length 50000k
34genfile --file baz
35genfile --run 'tar -vcf bar foo baz' --checkpoint 10 --length 49995k --truncate foo
36echo Exit status: $?
37echo separator
38if test "`uname -o`" = "OS/2"; then
39 # The OS/2 API has a 2 second granularity on file times.
40 sleep 3
41else
42 sleep 1
43fi
44genfile --file foo --seek 49995k --length 5k --pattern=zeros
45tar dvf bar],
46[1],
47[foo
48baz
49Exit status: 1
50separator
51foo
52foo: Mod time differs
53baz
54],
55[tar: foo: File shrank by 5120 bytes; padding with zeros
56])
57
58AT_CLEANUP
Note: See TracBrowser for help on using the repository browser.