1#!/bin/sh
2#
3# Copyright (c) 2003 Poul-Henning Kamp
4# All rights reserved.
5#
6# Please see src/share/examples/etc/bsd-style-copyright.
7#
8# $FreeBSD$
9#
10
11set -e
12
13TMP=/tmp/mtree.$$
14
15rm -rf ${TMP}
16mkdir -p ${TMP}
17
18K=uid,uname,gid,gname,flags,md5digest,size,ripemd160digest,sha1digest,sha256digest,cksum
19
20rm -rf _FOO
21mkdir _FOO
22touch _FOO/_uid
23touch _FOO/_size
24touch _FOO/zztype
25
26touch _FOO/_bar
27mtree -c -K $K -p .. > ${TMP}/_r
28mtree -c -K $K -p .. > ${TMP}/_r2
29rm -rf _FOO/_bar 
30
31rm -rf _FOO/zztype
32mkdir _FOO/zztype
33
34date > _FOO/_size
35
36chown nobody _FOO/_uid
37
38touch _FOO/_foo
39mtree -c -K $K -p .. > ${TMP}/_t
40
41rm -fr _FOO
42
43if mtree -f ${TMP}/_r -f ${TMP}/_r2 ; then
44	true
45else
46	echo "ERROR Compare identical failed" 1>&2
47	exit 1
48fi
49	
50if mtree -f ${TMP}/_r -f ${TMP}/_t > ${TMP}/_ ; then
51	echo "ERROR Compare different succeeded" 1>&2
52	exit 1
53fi
54
55if [ `wc -l  < ${TMP}/_` -ne 10 ] ; then
56	echo "ERROR wrong number of lines: `wc -l  ${TMP}/_`" 1>&2
57	exit 1
58fi
59	
60exit 0
61