1#!/bin/sh
2# Test "rm -ir".
3
4# Copyright (C) 1997-2023 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 3 of the License, or
9# (at your option) 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, see <https://www.gnu.org/licenses/>.
18
19. "${srcdir=.}/tests/init.sh"; path_prepend_ ./src
20print_ver_ rm
21
22t=t
23mkdir -p $t $t/a $t/b $t/c || framework_failure_
24> $t/a/a || framework_failure_
25> $t/b/bb || framework_failure_
26> $t/c/cc || framework_failure_
27
28cat <<EOF > in
29y
30y
31y
32y
33y
34y
35y
36y
37n
38n
39n
40EOF
41
42# Remove all but one of a, b, c -- I doubt that this test can portably
43# determine which one was removed based on order of dir entries.
44# This is a good argument for switching to a dejagnu-style test suite.
45rm --verbose -i -r $t < in > /dev/null 2>&1 || fail=1
46
47# $t should not have been removed.
48test -d $t || fail=1
49
50# There should be only one directory left.
51case $(echo $t/*) in
52  $t/[abc]) ;;
53  *) fail=1 ;;
54esac
55
56Exit $fail
57