Module Name: src
Committed By: christos
Date: Wed Jan 2 18:11:44 UTC 2013
Modified Files:
src/tests/usr.sbin/mtree: Makefile t_mtree.sh
Added Files:
src/tests/usr.sbin/mtree: mtree_d_create.out netbsd6_d_create.out
Removed Files:
src/tests/usr.sbin/mtree: d_create.out
Log Message:
Test the netbsd and mtree flavors.
To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 src/tests/usr.sbin/mtree/Makefile
cvs rdiff -u -r1.1 -r0 src/tests/usr.sbin/mtree/d_create.out
cvs rdiff -u -r0 -r1.1 src/tests/usr.sbin/mtree/mtree_d_create.out \
src/tests/usr.sbin/mtree/netbsd6_d_create.out
cvs rdiff -u -r1.4 -r1.5 src/tests/usr.sbin/mtree/t_mtree.sh
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/tests/usr.sbin/mtree/Makefile
diff -u src/tests/usr.sbin/mtree/Makefile:1.1 src/tests/usr.sbin/mtree/Makefile:1.2
--- src/tests/usr.sbin/mtree/Makefile:1.1 Sat Mar 17 12:33:16 2012
+++ src/tests/usr.sbin/mtree/Makefile Wed Jan 2 13:11:44 2013
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.1 2012/03/17 16:33:16 jruoho Exp $
+# $NetBSD: Makefile,v 1.2 2013/01/02 18:11:44 christos Exp $
NOMAN= # defined
@@ -9,12 +9,14 @@ TESTSDIR= ${TESTSBASE}/usr.sbin/mtree
TESTS_SH= t_mtree
FILESDIR= ${TESTSDIR}
+
FILES+= d_convert.in
FILES+= d_convert_C.out
FILES+= d_convert_C_S.out
FILES+= d_convert_D.out
FILES+= d_convert_D_S.out
-FILES+= d_create.out
+FILES+= netbsd6_d_create.out
+FILES+= mtree_d_create.out
FILES+= d_merge.in
FILES+= d_merge_C_M.out
FILES+= d_merge_C_M_S.out
Index: src/tests/usr.sbin/mtree/t_mtree.sh
diff -u src/tests/usr.sbin/mtree/t_mtree.sh:1.4 src/tests/usr.sbin/mtree/t_mtree.sh:1.5
--- src/tests/usr.sbin/mtree/t_mtree.sh:1.4 Sun Mar 25 12:10:13 2012
+++ src/tests/usr.sbin/mtree/t_mtree.sh Wed Jan 2 13:11:44 2013
@@ -1,4 +1,4 @@
-# $NetBSD: t_mtree.sh,v 1.4 2012/03/25 16:10:13 christos Exp $
+# $NetBSD: t_mtree.sh,v 1.5 2013/01/02 18:11:44 christos Exp $
#
# Copyright (c) 2009, 2012 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -28,6 +28,7 @@
# Postprocess mtree output, canonicalising portions that
# are expected to differ from one run to another.
#
+
h_postprocess()
{
sed -e '
@@ -43,7 +44,9 @@ h_check()
diff -Nru "$1" "$2" || atf_fail "files $1 and $2 differ"
}
-atf_test_case create
+
+atf_test_case mtree_create
+atf_test_case netbsd6_create
create_head()
{
atf_set "descr" "Create a specfile describing a directory tree"
@@ -52,6 +55,7 @@ create_head()
create_setup()
{
# create some directories
+ rm -fr create
mkdir -p create/a/1 create/a/2 create/b
# create some files
for file in create/top.file.1 \
@@ -80,13 +84,33 @@ create_body()
create_setup
# run mtree and check output
- ( cd create && mtree -c -k type,nlink,link,size,sha256 ) >output.raw \
+ ( cd create && mtree -F ${FLAVOR} -c -k type,nlink,link,size,sha256 ) >output.raw \
|| atf_fail "mtree exit status $?"
h_postprocess <output.raw >output
- h_check "$(atf_get_srcdir)/d_create.out" output
+ h_check "$(atf_get_srcdir)/${FLAVOR}_d_create.out" output
+}
+
+mtree_create_head()
+{
+ FLAVOR=mtree create_head
+}
+netbsd6_create_head()
+{
+ FLAVOR=netbsd6 create_head
}
-atf_test_case check
+mtree_create_body()
+{
+ FLAVOR=mtree create_body
+}
+netbsd6_create_body()
+{
+ FLAVOR=netbsd6 create_body
+}
+
+
+atf_test_case mtree_check
+atf_test_case netbsd6_check
check_head()
{
atf_set "descr" "Check a directory tree against a specfile"
@@ -98,12 +122,32 @@ check_body()
create_setup
# run mtree and check output
- ( cd create && mtree ) <"$(atf_get_srcdir)/d_create.out" >output \
+ ( cd create && mtree -F ${FLAVOR} ) <"$(atf_get_srcdir)/${FLAVOR}_d_create.out" >output \
|| atf_fail "mtree exit status $?"
h_check /dev/null output
}
-atf_test_case convert_C
+mtree_check_head()
+{
+ FLAVOR=mtree check_head
+}
+netbsd6_check_head()
+{
+ FLAVOR=netbsd6 check_head
+}
+
+mtree_check_body()
+{
+ FLAVOR=mtree check_body
+}
+netbsd6_check_body()
+{
+ FLAVOR=netbsd6 check_body
+}
+
+
+atf_test_case mtree_convert_C
+atf_test_case netbsd6_convert_C
convert_C_head()
{
atf_set "descr" "Convert a specfile to mtree -C format, unsorted"
@@ -111,11 +155,31 @@ convert_C_head()
convert_C_body()
{
- mtree -C -K all <"$(atf_get_srcdir)/d_convert.in" >output
+ mtree -F ${FLAVOR} -C -K all <"$(atf_get_srcdir)/d_convert.in" >output
h_check "$(atf_get_srcdir)/d_convert_C.out" output
}
-atf_test_case convert_C_S
+mtree_convert_C_head()
+{
+ FLAVOR=mtree convert_C_head
+}
+netbsd6_convert_C_head()
+{
+ FLAVOR=netbsd6 convert_C_head
+}
+
+mtree_convert_C_body()
+{
+ FLAVOR=mtree convert_C_body
+}
+netbsd6_convert_C_body()
+{
+ FLAVOR=netbsd6 convert_C_body
+}
+
+
+atf_test_case mtree_convert_C_S
+atf_test_case netbsd6_convert_C_S
convert_C_S_head()
{
atf_set "descr" "Convert a specfile to mtree -C format, sorted"
@@ -123,11 +187,31 @@ convert_C_S_head()
convert_C_S_body()
{
- mtree -C -S -K all <"$(atf_get_srcdir)/d_convert.in" >output
+ mtree -F ${FLAVOR} -C -S -K all <"$(atf_get_srcdir)/d_convert.in" >output
h_check "$(atf_get_srcdir)/d_convert_C_S.out" output
}
-atf_test_case convert_D
+mtree_convert_C_S_head()
+{
+ FLAVOR=mtree convert_C_S_head
+}
+netbsd6_convert_C_S_head()
+{
+ FLAVOR=netbsd6 convert_C_S_head
+}
+
+mtree_convert_C_S_body()
+{
+ FLAVOR=mtree convert_C_S_body
+}
+netbsd6_convert_C_S_body()
+{
+ FLAVOR=netbsd6 convert_C_S_body
+}
+
+
+atf_test_case mtree_convert_D
+atf_test_case netbsd6_convert_D
convert_D_head()
{
atf_set "descr" "Convert a specfile to mtree -D format, unsorted"
@@ -135,11 +219,31 @@ convert_D_head()
convert_D_body()
{
- mtree -D -K all <"$(atf_get_srcdir)/d_convert.in" >output
+ mtree -F ${FLAVOR} -D -K all <"$(atf_get_srcdir)/d_convert.in" >output
h_check "$(atf_get_srcdir)/d_convert_D.out" output
}
-atf_test_case convert_D_S
+mtree_convert_D_head()
+{
+ FLAVOR=mtree convert_D_head
+}
+netbsd6_convert_D_head()
+{
+ FLAVOR=netbsd6 convert_D_head
+}
+
+mtree_convert_D_body()
+{
+ FLAVOR=mtree convert_D_body
+}
+netbsd6_convert_D_body()
+{
+ FLAVOR=netbsd6 convert_D_body
+}
+
+
+atf_test_case mtree_convert_D_S
+atf_test_case netbsd6_convert_D_S
convert_D_S_head()
{
atf_set "descr" "Convert a specfile to mtree -D format, sorted"
@@ -147,11 +251,31 @@ convert_D_S_head()
convert_D_S_body()
{
- mtree -D -S -K all <"$(atf_get_srcdir)/d_convert.in" >output
+ mtree -F ${FLAVOR} -D -S -K all <"$(atf_get_srcdir)/d_convert.in" >output
h_check "$(atf_get_srcdir)/d_convert_D_S.out" output
}
-atf_test_case ignore
+mtree_convert_D_S_head()
+{
+ FLAVOR=mtree convert_D_S_head
+}
+netbsd6_convert_D_S_head()
+{
+ FLAVOR=netbsd6 convert_D_S_head
+}
+
+mtree_convert_D_S_body()
+{
+ FLAVOR=mtree convert_D_S_body
+}
+netbsd6_convert_D_S_body()
+{
+ FLAVOR=netbsd6 convert_D_S_body
+}
+
+
+atf_test_case mtree_ignore
+atf_test_case netbs6_ignore
ignore_head()
{
atf_set "descr" "Test that -d ignores symlinks (PR bin/41061)"
@@ -160,20 +284,40 @@ ignore_head()
ignore_body()
{
mkdir newdir
- mtree -c | mtree -Ck uid,gid,mode > mtree.spec
+ mtree -F ${FLAVOR} -c | mtree -F ${FLAVOR} -Ck uid,gid,mode > mtree.spec
ln -s newdir otherdir
# This yields "extra: otherdir" even with -d.
# (PR bin/41061)
- atf_check -s ignore -o empty -e empty -x "mtree -d < mtree.spec"
+ atf_check -s ignore -o empty -e empty -x "mtree -F ${FLAVOR} -d < mtree.spec"
# Delete the symlink and re-verify.
#
rm otherdir
- atf_check -s ignore -o empty -e empty -x "mtree -d < mtree.spec"
+ atf_check -s ignore -o empty -e empty -x "mtree -F ${FLAVOR} -d < mtree.spec"
+}
+
+mtree_ignore_head()
+{
+ FLAVOR=mtree ignore_head
+}
+netbsd6_ignore_head()
+{
+ FLAVOR=netbsd6 ignore_head
+}
+
+mtree_ignore_body()
+{
+ FLAVOR=mtree ignore_body
+}
+netbsd6_ignore_body()
+{
+ FLAVOR=netbsd6 ignore_body
}
-atf_test_case merge
+
+atf_test_case mtree_merge
+atf_test_case netbsd6_merge
merge_head()
{
atf_set "descr" "Merge records of different type"
@@ -181,14 +325,34 @@ merge_head()
merge_body()
{
- mtree -C -M -K all <"$(atf_get_srcdir)/d_merge.in" >output
+ mtree -F ${FLAVOR} -C -M -K all <"$(atf_get_srcdir)/d_merge.in" >output
h_check "$(atf_get_srcdir)/d_merge_C_M.out" output
# same again, with sorting
- mtree -C -M -S -K all <"$(atf_get_srcdir)/d_merge.in" >output
+ mtree -F ${FLAVOR} -C -M -S -K all <"$(atf_get_srcdir)/d_merge.in" >output
h_check "$(atf_get_srcdir)/d_merge_C_M_S.out" output
}
-atf_test_case nonemptydir
+mtree_merge_head()
+{
+ FLAVOR=mtree merge_head
+}
+netbsd6_merge_head()
+{
+ FLAVOR=netbsd6 merge_head
+}
+
+mtree_merge_body()
+{
+ FLAVOR=mtree merge_body
+}
+netbsd6_merge_body()
+{
+ FLAVOR=netbsd6 merge_body
+}
+
+
+atf_test_case mtree_nonemptydir
+atf_test_case netbsd6_nonemptydir
nonemptydir_head()
{
atf_set "descr" "Test that new non-empty " \
@@ -200,29 +364,58 @@ nonemptydir_body()
mkdir testdir
cd testdir
- mtree -c > mtree.spec
+ mtree -F ${FLAVOR} -c > mtree.spec
if [ ! -f mtree.spec ]; then
atf_fail "mtree failed"
fi
touch bar
- atf_check -s ignore -o save:output -x "mtree -f mtree.spec"
+ atf_check -s ignore -o save:output -x "mtree -F ${FLAVOR} -f mtree.spec"
if [ ! -n "$(egrep "extra: bar" output)" ]; then
atf_fail "mtree did not record changes (PR bin/25693)"
fi
}
+mtree_nonemptydir_head()
+{
+ FLAVOR=mtree nonemptydir_head
+}
+netbsd6_nonemptydir_head()
+{
+ FLAVOR=netbsd6 nonemptydir_head
+}
+
+mtree_nonemptydir_body()
+{
+ FLAVOR=mtree nonemptydir_body
+}
+netbsd6_nonemptydir_body()
+{
+ FLAVOR=netbsd6 nonemptydir_body
+}
+
+
atf_init_test_cases()
{
- atf_add_test_case create
- atf_add_test_case check
- atf_add_test_case convert_C
- atf_add_test_case convert_C_S
- atf_add_test_case convert_D
- atf_add_test_case convert_D_S
- atf_add_test_case ignore
- atf_add_test_case merge
- atf_add_test_case nonemptydir
+ atf_add_test_case mtree_create
+ atf_add_test_case mtree_check
+ atf_add_test_case mtree_convert_C
+ atf_add_test_case mtree_convert_C_S
+ atf_add_test_case mtree_convert_D
+ atf_add_test_case mtree_convert_D_S
+ atf_add_test_case mtree_ignore
+ atf_add_test_case mtree_merge
+ atf_add_test_case mtree_nonemptydir
+
+ atf_add_test_case netbsd6_create
+ atf_add_test_case netbsd6_check
+ atf_add_test_case netbsd6_convert_C
+ atf_add_test_case netbsd6_convert_C_S
+ atf_add_test_case netbsd6_convert_D
+ atf_add_test_case netbsd6_convert_D_S
+ atf_add_test_case netbsd6_ignore
+ atf_add_test_case netbsd6_merge
+ atf_add_test_case netbsd6_nonemptydir
}
Added files:
Index: src/tests/usr.sbin/mtree/mtree_d_create.out
diff -u /dev/null src/tests/usr.sbin/mtree/mtree_d_create.out:1.1
--- /dev/null Wed Jan 2 13:11:45 2013
+++ src/tests/usr.sbin/mtree/mtree_d_create.out Wed Jan 2 13:11:44 2013
@@ -0,0 +1,55 @@
+# user: x
+# machine: x
+# tree: x
+# date: x
+
+# .
+/set type=file nlink=1
+. type=dir nlink=4 size=240
+ a.symlink.1 type=link size=8 link=a.file.1
+ top.dangling \
+ type=link size=11 link=nonexistent
+ top.file.1 size=18 \
+ sha256=74c53aaf0cd9543b7efad969de1058ee38859134ba467500b849811fc3513195
+ top.symlink.b \
+ type=link size=1 link=b
+
+# ./a
+a type=dir nlink=4 size=200
+ a.file.1 size=18 \
+ sha256=bdbea62f7ccdf862f22254ea871d523845250010d5f233896e800142a859eef2
+ a.file.2 size=18 \
+ sha256=77876d113fe1b45a41f8d1d3e178aaad7f91fcd93d3df782690625b74ad90fe6
+ a.hardlink.b2 \
+ nlink=2 size=18 \
+ sha256=784fd6b95fe5054d87bf268de51dea043031c5e985f668d4f51e1c759b0f9333
+
+# ./a/1
+1 type=dir nlink=2 size=40
+ a1.file.1 size=21 \
+ sha256=a062cd272facdd38c4fdeff2a18947b28c99a28a8fe51f88468978740382e592
+# ./a/1
+..
+
+
+# ./a/2
+2 type=dir nlink=2 size=0
+# ./a/2
+..
+
+# ./a
+..
+
+
+# ./b
+b type=dir nlink=2 size=120
+ b.file.1 nlink=2 size=18 \
+ sha256=5754b0d97a8238ea0e495ab871667dcab8f1d684e323290ae76f70c47de18998
+ b.file.2 nlink=2 size=18 \
+ sha256=784fd6b95fe5054d87bf268de51dea043031c5e985f668d4f51e1c759b0f9333
+ b.hardlink.1 \
+ nlink=2 size=18 \
+ sha256=5754b0d97a8238ea0e495ab871667dcab8f1d684e323290ae76f70c47de18998
+# ./b
+..
+
Index: src/tests/usr.sbin/mtree/netbsd6_d_create.out
diff -u /dev/null src/tests/usr.sbin/mtree/netbsd6_d_create.out:1.1
--- /dev/null Wed Jan 2 13:11:45 2013
+++ src/tests/usr.sbin/mtree/netbsd6_d_create.out Wed Jan 2 13:11:44 2013
@@ -0,0 +1,55 @@
+# user: x
+# machine: x
+# tree: x
+# date: x
+
+# .
+/set type=file nlink=1
+. type=dir nlink=4
+ a.symlink.1 type=link link=a.file.1
+ top.dangling \
+ type=link link=nonexistent
+ top.file.1 size=18 \
+ sha256=74c53aaf0cd9543b7efad969de1058ee38859134ba467500b849811fc3513195
+ top.symlink.b \
+ type=link link=b
+
+# ./a
+a type=dir nlink=4
+ a.file.1 size=18 \
+ sha256=bdbea62f7ccdf862f22254ea871d523845250010d5f233896e800142a859eef2
+ a.file.2 size=18 \
+ sha256=77876d113fe1b45a41f8d1d3e178aaad7f91fcd93d3df782690625b74ad90fe6
+ a.hardlink.b2 \
+ nlink=2 size=18 \
+ sha256=784fd6b95fe5054d87bf268de51dea043031c5e985f668d4f51e1c759b0f9333
+
+# ./a/1
+1 type=dir nlink=2
+ a1.file.1 size=21 \
+ sha256=a062cd272facdd38c4fdeff2a18947b28c99a28a8fe51f88468978740382e592
+# ./a/1
+..
+
+
+# ./a/2
+2 type=dir nlink=2
+# ./a/2
+..
+
+# ./a
+..
+
+
+# ./b
+b type=dir nlink=2
+ b.file.1 nlink=2 size=18 \
+ sha256=5754b0d97a8238ea0e495ab871667dcab8f1d684e323290ae76f70c47de18998
+ b.file.2 nlink=2 size=18 \
+ sha256=784fd6b95fe5054d87bf268de51dea043031c5e985f668d4f51e1c759b0f9333
+ b.hardlink.1 \
+ nlink=2 size=18 \
+ sha256=5754b0d97a8238ea0e495ab871667dcab8f1d684e323290ae76f70c47de18998
+# ./b
+..
+