diff options
-rwxr-xr-x | tests/cp/no-deref-link2 | 22 | ||||
-rwxr-xr-x | tests/cp/no-deref-link3 | 19 |
2 files changed, 41 insertions, 0 deletions
diff --git a/tests/cp/no-deref-link2 b/tests/cp/no-deref-link2 new file mode 100755 index 000000000..8dfc6ba33 --- /dev/null +++ b/tests/cp/no-deref-link2 @@ -0,0 +1,22 @@ +#!/bin/sh +# FIXME: This test requires ln -s. +# cp from 3.16 fails this test + +rm -rf a b +mkdir b +msg=bar +echo $msg > a +cd b +ln -s ../a . +cd .. + +# It should fail with a message something like this: +# ./cp: `a' and `b/foo' are the same file +./cp -d a b 2>/dev/null + +# Fail this test if the exit status is not 1 +test $? = 1 || exit 1 + +test "`cat a`" = bar || exit 1 + +exit 0 diff --git a/tests/cp/no-deref-link3 b/tests/cp/no-deref-link3 new file mode 100755 index 000000000..ca3aa4840 --- /dev/null +++ b/tests/cp/no-deref-link3 @@ -0,0 +1,19 @@ +#!/bin/sh +# FIXME: This test requires ln -s. +# cp from 3.16 fails this test + +rm -f a b +msg=bar +echo $msg > a +ln -s a b + +# It should fail with a message something like this: +# ./cp: `a' and `b' are the same file +./cp -d a b 2>/dev/null + +# Fail this test if the exit status is not 1 +test $? = 1 || exit 1 + +test "`cat a`" = bar || exit 1 + +exit 0 |