Update FSF postal mail address.
[debian/tar] / tests / ignfail.at
1 # Process this file with autom4te to create testsuite. -*- Autotest -*-
2
3 # Test suite for GNU tar.
4 # Copyright (C) 2004 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 # Unreadable directories yielded error despite --ignore-failed-read.
22
23 AT_SETUP([ignfail])
24 AT_KEYWORDS([ignfail])
25
26 AT_TAR_CHECK([
27 if test -w / ; then
28         # The test is meaningless for super-user.
29         AT_SKIP_TEST
30 else
31         touch file
32         mkdir directory
33         touch directory/file
34
35         echo 1>&2 -----
36         chmod 000 file
37         tar cf archive file
38         status=$?
39         chmod 600 file
40         test $status = 2 || exit 1
41
42         echo 1>&2 -----
43         chmod 000 file
44         tar cf archive --ignore-failed-read file || exit 1
45         status=$?
46         chmod 600 file
47         test $status = 0 || exit 1
48
49         echo 1>&2 -----
50         chmod 000 directory
51         tar cf archive directory
52         status=$?
53         chmod 700 directory
54         test $status = 2 || exit 1
55
56         echo 1>&2 -----
57         chmod 000 directory
58         tar cf archive --ignore-failed-read directory || exit 1
59         status=$?
60         chmod 700 directory
61         test $status = 0
62 fi
63 ],
64 [0],
65 [],
66 [
67 -----
68 tar: file: Cannot open: Permission denied
69 tar: Error exit delayed from previous errors
70 -----
71 tar: file: Warning: Cannot open: Permission denied
72 -----
73 tar: directory: Cannot savedir: Permission denied
74 tar: Error exit delayed from previous errors
75 -----
76 tar: directory: Warning: Cannot savedir: Permission denied
77 ])
78
79 AT_CLEANUP