1#!/bin/sh
2# Ensure "mv --verbose --backup" works the same for dirs and non-dirs.
3
4# Copyright (C) 2006-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_ mv
21
22mkdir A B || framework_failure_
23touch X Y || framework_failure_
24
25
26# Before coreutils-6.2, the " (backup: 'B.~1~')" suffix was not printed.
27mv --verbose --backup=numbered -T A B > out || fail=1
28cat <<\EOF > exp || framework_failure_
29renamed 'A' -> 'B' (backup: 'B.~1~')
30EOF
31
32compare exp out || fail=1
33
34# Bug#52410
35mkdir C D E || framework_failure_
36mv -T --backup=numbered C E/ || fail=1
37mv -T --backup=numbered D E/ || fail=1
38
39# Bug#55029
40mkdir F && echo 1 >1 && echo 2 >2 && cp 1 F/X && cp 2 X || framework_failure_
41mv --backup=simple X F/ || fail=1
42compare 1 F/X~ || fail=1
43compare 2 F/X || fail=1
44
45Exit $fail
46