diff options
Diffstat (limited to 'file_cmds/mtree/test')
-rw-r--r-- | file_cmds/mtree/test/test00.sh | 67 | ||||
-rw-r--r-- | file_cmds/mtree/test/test01.sh | 40 | ||||
-rw-r--r-- | file_cmds/mtree/test/test02.sh | 36 | ||||
-rw-r--r-- | file_cmds/mtree/test/test03.sh | 60 | ||||
-rw-r--r-- | file_cmds/mtree/test/test04.sh | 51 |
5 files changed, 254 insertions, 0 deletions
diff --git a/file_cmds/mtree/test/test00.sh b/file_cmds/mtree/test/test00.sh new file mode 100644 index 0000000..a2e4b28 --- /dev/null +++ b/file_cmds/mtree/test/test00.sh @@ -0,0 +1,67 @@ +#!/bin/sh +# +# Copyright (c) 2003 Poul-Henning Kamp +# All rights reserved. +# +# Please see src/share/examples/etc/bsd-style-copyright. +# +# $FreeBSD: src/usr.sbin/mtree/test/test00.sh,v 1.3 2003/11/05 22:26:08 phk Exp $ +# + +set -e + +TMP=/tmp/mtree.$$ + +rm -rf ${TMP} +mkdir -p ${TMP} ${TMP}/mr ${TMP}/mt + + +mkdir ${TMP}/mt/foo +mkdir ${TMP}/mr/\* +mtree -c -p ${TMP}/mr | mtree -U -r -p ${TMP}/mt > /dev/null 2>&1 +if [ -d ${TMP}/mt/foo ] ; then + echo "ERROR Mtree create fell for filename with '*' char" 1>&2 + rm -rf ${TMP} + exit 1 +fi +rmdir ${TMP}/mr/\* + +mkdir -p ${TMP}/mt/foo +mkdir ${TMP}/mr/\[f\]oo +mtree -c -p ${TMP}/mr | mtree -U -r -p ${TMP}/mt > /dev/null 2>&1 +if [ -d ${TMP}/mt/foo ] ; then + echo "ERROR Mtree create fell for filename with '[' char" 1>&2 + rm -rf ${TMP} + exit 1 +fi +rmdir ${TMP}/mr/\[f\]oo + +mkdir -p ${TMP}/mt/foo +mkdir ${TMP}/mr/\?oo +mtree -c -p ${TMP}/mr | mtree -U -r -p ${TMP}/mt > /dev/null 2>&1 +if [ -d ${TMP}/mt/foo ] ; then + echo "ERROR Mtree create fell for filename with '?' char" 1>&2 + rm -rf ${TMP} + exit 1 +fi +rmdir ${TMP}/mr/\?oo + +mkdir ${TMP}/mr/\# +mtree -c -p ${TMP}/mr > ${TMP}/_ +if mtree -U -r -p ${TMP}/mt < ${TMP}/_ > /dev/null 2>&1 ; then + true +else + echo "ERROR Mtree create fell for filename with '#' char" 1>&2 + rm -rf ${TMP} + exit 1 +fi + +if [ ! -d ${TMP}/mt/\# ] ; then + echo "ERROR Mtree update failed to create name with '#' char" 1>&2 + rm -rf ${TMP} + exit 1 +fi +rmdir ${TMP}/mr/\# + +rm -rf ${TMP} +exit 0 diff --git a/file_cmds/mtree/test/test01.sh b/file_cmds/mtree/test/test01.sh new file mode 100644 index 0000000..d056b91 --- /dev/null +++ b/file_cmds/mtree/test/test01.sh @@ -0,0 +1,40 @@ +#!/bin/sh +# +# Copyright (c) 2003 Poul-Henning Kamp +# All rights reserved. +# +# Please see src/share/examples/etc/bsd-style-copyright. +# +# $FreeBSD: src/usr.sbin/mtree/test/test01.sh,v 1.1 2003/10/30 12:01:32 phk Exp $ +# + +set -e + +TMP=/tmp/mtree.$$ + +rm -rf ${TMP} +mkdir -p ${TMP} ${TMP}/mr ${TMP}/mt + + +ln -s "xx this=is=wrong" ${TMP}/mr/foo +mtree -c -p ${TMP}/mr > ${TMP}/_ + +if mtree -U -r -p ${TMP}/mt < ${TMP}/_ > /dev/null 2>&1 ; then + true +else + echo "ERROR Mtree failed on symlink with space char" 1>&2 + rm -rf ${TMP} + exit 1 +fi + +x=x`(cd ${TMP}/mr ; ls -l foo 2>&1) || true` +y=x`(cd ${TMP}/mt ; ls -l foo 2>&1) || true` + +if [ "$x" != "$y" ] ; then + echo "ERROR Recreation of spaced symlink failed" 1>&2 + rm -rf ${TMP} + exit 1 +fi + +rm -rf ${TMP} +exit 0 diff --git a/file_cmds/mtree/test/test02.sh b/file_cmds/mtree/test/test02.sh new file mode 100644 index 0000000..450ebb3 --- /dev/null +++ b/file_cmds/mtree/test/test02.sh @@ -0,0 +1,36 @@ +#!/bin/sh +# +# Copyright (c) 2003 Dan Nelson +# All rights reserved. +# +# Please see src/share/examples/etc/bsd-style-copyright. +# +# $FreeBSD: src/usr.sbin/mtree/test/test02.sh,v 1.1 2003/10/31 13:39:19 phk Exp $ +# + +set -e + +TMP=/tmp/mtree.$$ + +rm -rf ${TMP} +mkdir -p ${TMP} ${TMP}/mr ${TMP}/mt + +touch -t 199901020304 ${TMP}/mr/oldfile +touch ${TMP}/mt/oldfile + +mtree -c -p ${TMP}/mr > ${TMP}/_ + +mtree -U -r -p ${TMP}/mt < ${TMP}/_ > /dev/null + +x=x`(cd ${TMP}/mr ; ls -l 2>&1) || true` +y=x`(cd ${TMP}/mt ; ls -l 2>&1) || true` + +if [ "$x" != "$y" ] ; then + echo "ERROR Update of mtime failed" 1>&2 + rm -rf ${TMP} + exit 1 +fi + +rm -rf ${TMP} +exit 0 + diff --git a/file_cmds/mtree/test/test03.sh b/file_cmds/mtree/test/test03.sh new file mode 100644 index 0000000..52e08c3 --- /dev/null +++ b/file_cmds/mtree/test/test03.sh @@ -0,0 +1,60 @@ +#!/bin/sh +# +# Copyright (c) 2003 Poul-Henning Kamp +# All rights reserved. +# +# Please see src/share/examples/etc/bsd-style-copyright. +# +# $FreeBSD: src/usr.sbin/mtree/test/test03.sh,v 1.2 2005/03/29 11:44:17 tobez Exp $ +# + +set -e + +TMP=/tmp/mtree.$$ + +rm -rf ${TMP} +mkdir -p ${TMP} + +K=uid,uname,gid,gname,flags,md5digest,size,ripemd160digest,sha1digest,sha256digest,cksum + +rm -rf _FOO +mkdir _FOO +touch _FOO/_uid +touch _FOO/_size +touch _FOO/zztype + +touch _FOO/_bar +mtree -c -K $K -p .. > ${TMP}/_r +mtree -c -K $K -p .. > ${TMP}/_r2 +rm -rf _FOO/_bar + +rm -rf _FOO/zztype +mkdir _FOO/zztype + +date > _FOO/_size + +chown nobody _FOO/_uid + +touch _FOO/_foo +mtree -c -K $K -p .. > ${TMP}/_t + +rm -fr _FOO + +if mtree -f ${TMP}/_r -f ${TMP}/_r2 ; then + true +else + echo "ERROR Compare identical failed" 1>&2 + exit 1 +fi + +if mtree -f ${TMP}/_r -f ${TMP}/_t > ${TMP}/_ ; then + echo "ERROR Compare different succeeded" 1>&2 + exit 1 +fi + +if [ `wc -l < ${TMP}/_` -ne 10 ] ; then + echo "ERROR wrong number of lines: `wc -l ${TMP}/_`" 1>&2 + exit 1 +fi + +exit 0 diff --git a/file_cmds/mtree/test/test04.sh b/file_cmds/mtree/test/test04.sh new file mode 100644 index 0000000..453d146 --- /dev/null +++ b/file_cmds/mtree/test/test04.sh @@ -0,0 +1,51 @@ +#!/bin/sh +# +# Copyright (c) 2003 Dan Nelson +# All rights reserved. +# +# Please see src/share/examples/etc/bsd-style-copyright. +# +# $FreeBSD: src/usr.sbin/mtree/test/test04.sh,v 1.1 2003/11/13 11:02:57 phk Exp $ +# + +set -e + +TMP=/tmp/mtree.$$ + +rm -rf ${TMP} +mkdir -p ${TMP} ${TMP}/mr ${TMP}/mt + +mkdir ${TMP}/mr/a +mkdir ${TMP}/mr/b +mkdir ${TMP}/mt/a +mkdir ${TMP}/mt/b +touch ${TMP}/mt/z + +mtree -c -p ${TMP}/mr > ${TMP}/_r +mtree -c -p ${TMP}/mt > ${TMP}/_t + +if mtree -f ${TMP}/_r -f ${TMP}/_t > ${TMP}/_ ; then + echo "ERROR wrong exit on difference" 1>&2 + exit 1 +fi + +if [ `wc -l < ${TMP}/_` -ne 1 ] ; then + echo "ERROR spec/spec compare generated wrong output" 1>&2 + rm -rf ${TMP} + exit 1 +fi + +if mtree -f ${TMP}/_t -f ${TMP}/_r > ${TMP}/_ ; then + echo "ERROR wrong exit on difference" 1>&2 + exit 1 +fi + +if [ `wc -l < ${TMP}/_` -ne 1 ] ; then + echo "ERROR spec/spec compare generated wrong output" 1>&2 + rm -rf ${TMP} + exit 1 +fi + +rm -rf ${TMP} +exit 0 + |