Blame tests/test-put-symlink.sh
|
Packit Service |
a2ae7a |
#!/bin/sh
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
# Test that we correctly preserve symlinks when saving a file
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
ROOT=$abs_top_builddir/build/test-put-symlink
|
|
Packit Service |
a2ae7a |
LENSES=$abs_top_srcdir/lenses
|
|
Packit Service |
a2ae7a |
HOSTS=$ROOT/etc/hosts
|
|
Packit Service |
a2ae7a |
REAL_HOSTS=$ROOT/other/hosts
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
rm -rf $ROOT
|
|
Packit Service |
a2ae7a |
mkdir -p $(dirname $HOSTS)
|
|
Packit Service |
a2ae7a |
mkdir -p $(dirname $REAL_HOSTS)
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
cat <<EOF > $REAL_HOSTS
|
|
Packit Service |
a2ae7a |
127.0.0.1 localhost
|
|
Packit Service |
a2ae7a |
EOF
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
(cd $(dirname $HOSTS) && ln -s ../other/hosts $(basename $HOSTS))
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
augtool --nostdinc -I $LENSES -b -r $ROOT > /dev/null <
|
|
Packit Service |
a2ae7a |
set /files/etc/hosts/1/alias myhost
|
|
Packit Service |
a2ae7a |
save
|
|
Packit Service |
a2ae7a |
EOF
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
HOSTS_AUGSAVE=${HOSTS}.augsave
|
|
Packit Service |
a2ae7a |
if [ ! -f $HOSTS_AUGSAVE ] ; then
|
|
Packit Service |
a2ae7a |
echo "Missing /etc/hosts.augsave"
|
|
Packit Service |
a2ae7a |
exit 1
|
|
Packit Service |
a2ae7a |
fi
|
|
Packit Service |
a2ae7a |
if [ -h $HOSTS_AUGSAVE ] ; then
|
|
Packit Service |
a2ae7a |
echo "The file /etc/hosts.augsave is a symlink"
|
|
Packit Service |
a2ae7a |
exit 1
|
|
Packit Service |
a2ae7a |
fi
|
|
Packit Service |
a2ae7a |
if [ ! -h $HOSTS ] ; then
|
|
Packit Service |
a2ae7a |
echo "/etc/hosts is not a symbolic link"
|
|
Packit Service |
a2ae7a |
exit 1
|
|
Packit Service |
a2ae7a |
fi
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
LINK=$(readlink $HOSTS)
|
|
Packit Service |
a2ae7a |
if [ "x$LINK" != "x../other/hosts" ] ; then
|
|
Packit Service |
a2ae7a |
echo "/etc/hosts does not link to ../other/hosts"
|
|
Packit Service |
a2ae7a |
exit 1
|
|
Packit Service |
a2ae7a |
fi
|
|
Packit Service |
a2ae7a |
|
|
Packit Service |
a2ae7a |
if ! grep myhost $REAL_HOSTS >/dev/null; then
|
|
Packit Service |
a2ae7a |
echo "/other/hosts does not contain the modification"
|
|
Packit Service |
a2ae7a |
exit 1
|
|
Packit Service |
a2ae7a |
fi
|