]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
also test cp
authorJim Meyering <jim@meyering.net>
Fri, 28 Feb 2003 21:34:15 +0000 (21:34 +0000)
committerJim Meyering <jim@meyering.net>
Fri, 28 Feb 2003 21:34:15 +0000 (21:34 +0000)
tests/mv/hard-2

index 3a44e2cf90dbf5618056d13cf626ef37de366890..1af8fb121bac5124df7e3c25dbe9f8f039b46c13 100755 (executable)
@@ -1,9 +1,11 @@
 #!/bin/sh
 # Ensure that moving hard-linked arguments onto existing destinations works.
+# Likewise when using cp --preserve=link.
 
 if test "$VERBOSE" = yes; then
   set -x
   mv --version
+  cp --version
 fi
 
 . $srcdir/../envvar-check
@@ -30,6 +32,31 @@ fi
 
 fail=0
 
+# ======================================
+cp --preserve=link a b c dst || fail=1
+# The source files must remain.
+test -f a || fail=1
+test -f b || fail=1
+test -f c || fail=1
+cd dst
+
+# Three destination files must exist.
+test -f a || fail=1
+test -f b || fail=1
+test -f c || fail=1
+
+# The three i-node numbers must be the same.
+ia=`ls -i a|sed 's/ a//'`
+ib=`ls -i b|sed 's/ b//'`
+ic=`ls -i c|sed 's/ c//'`
+test $ia = $ib || fail=1
+test $ia = $ic || fail=1
+
+cd ..
+rm -f dst/[abc]
+(cd dst && touch a b c)
+
+# ======================================
 mv a b c dst || fail=1
 
 # The source files must be gone.