mirror of
https://github.com/samba-team/samba.git
synced 2025-02-02 09:47:23 +03:00
testprogs: Fix and improve runtime-links test
This fixes running `make test` in a release tarball! BUG: https://bugzilla.samba.org/show_bug.cgi?id=14542 Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org>
This commit is contained in:
parent
e4194355f4
commit
a9765084f1
@ -1,4 +1,4 @@
|
||||
release_dir=`dirname $0`/../../source4/selftest/provisions/$RELEASE
|
||||
release_dir=$SRCDIR_ABS/source4/selftest/provisions/$RELEASE
|
||||
|
||||
ldbadd="ldbadd"
|
||||
if [ -x "$BINDIR/ldbadd" ]; then
|
||||
@ -25,13 +25,15 @@ if [ -x "$BINDIR/ldbrename" ]; then
|
||||
ldbrename="$BINDIR/ldbrename"
|
||||
fi
|
||||
|
||||
samba_tdbrestore="tdbrestore"
|
||||
if [ -x "$BINDIR/tdbrestore" ]; then
|
||||
samba_tdbrestore="$BINDIR/tdbrestore"
|
||||
fi
|
||||
|
||||
samba_undump="$SRCDIR_ABS/source4/selftest/provisions/undump.sh"
|
||||
|
||||
undump() {
|
||||
if test -x $BINDIR/tdbrestore;
|
||||
then
|
||||
`dirname $0`/../../source4/selftest/provisions/undump.sh $release_dir $PREFIX_ABS/$RELEASE $BINDIR/tdbrestore
|
||||
else
|
||||
`dirname $0`/../../source4/selftest/provisions/undump.sh $release_dir $PREFIX_ABS/$RELEASE
|
||||
fi
|
||||
$samba_undump $release_dir $PREFIX_ABS/$RELEASE $samba_tdbrestore
|
||||
}
|
||||
|
||||
add_dangling_link() {
|
||||
|
@ -11,10 +11,28 @@ PREFIX_ABS="$1"
|
||||
RELEASE="$2"
|
||||
shift 2
|
||||
|
||||
failed=0
|
||||
|
||||
. `dirname $0`/subunit.sh
|
||||
|
||||
. `dirname $0`/common-links.sh
|
||||
|
||||
. `dirname $0`/common_test_fns.inc
|
||||
|
||||
if [ ! -x $samba_undump ] || [ ! -d $release_dir ]; then
|
||||
subunit_start_test $RELEASE
|
||||
subunit_skip_test $RELEASE <<EOF
|
||||
no test provision
|
||||
EOF
|
||||
|
||||
subunit_start_test "tombstones_expunge"
|
||||
subunit_skip_test "tombstones_expunge" <<EOF
|
||||
no test provision
|
||||
EOF
|
||||
|
||||
exit 0
|
||||
fi
|
||||
|
||||
delete_member_of_deleted_group() {
|
||||
TZ=UTC $ldbdel -H tdb://$PREFIX_ABS/${RELEASE}/private/sam.ldb 'CN=User1 UT. Tester,CN=Users,DC=release-4-5-0-pre1,DC=samba,DC=corp'
|
||||
if [ "$?" != "0" ]; then
|
||||
@ -36,39 +54,26 @@ delete_dangling_backlink_memberof_group() {
|
||||
fi
|
||||
}
|
||||
|
||||
remove_directory $PREFIX_ABS/${RELEASE}
|
||||
|
||||
if [ -d $release_dir ]; then
|
||||
testit $RELEASE undump
|
||||
testit "add_dangling_link" add_dangling_link
|
||||
testit "add_dangling_backlink" add_dangling_backlink
|
||||
testit "add_deleted_dangling_backlink" add_deleted_dangling_backlink
|
||||
testit "revive_links_on_deleted_group" revive_links_on_deleted_group
|
||||
testit "revive_backlink_on_deleted_group" revive_backlink_on_deleted_group
|
||||
testit "add_deleted_target_link" add_deleted_target_link
|
||||
testit "add_deleted_target_backlink" add_deleted_target_backlink
|
||||
testit "dangling_one_way_link" dangling_one_way_link
|
||||
testit "dangling_one_way_dn" dangling_one_way_dn
|
||||
testit "deleted_one_way_dn" deleted_one_way_dn
|
||||
testit "add_dangling_multi_valued" add_dangling_multi_valued
|
||||
testit $RELEASE undump || failed=`expr $failed + 1`
|
||||
testit "add_dangling_link" add_dangling_link || failed=`expr $failed + 1`
|
||||
testit "add_dangling_backlink" add_dangling_backlink || failed=`expr $failed + 1`
|
||||
testit "add_deleted_dangling_backlink" add_deleted_dangling_backlink || failed=`expr $failed + 1`
|
||||
testit "revive_links_on_deleted_group" revive_links_on_deleted_group || failed=`expr $failed + 1`
|
||||
testit "revive_backlink_on_deleted_group" revive_backlink_on_deleted_group || failed=`expr $failed + 1`
|
||||
testit "add_deleted_target_link" add_deleted_target_link || failed=`expr $failed + 1`
|
||||
testit "add_deleted_target_backlink" add_deleted_target_backlink || failed=`expr $failed + 1`
|
||||
testit "dangling_one_way_link" dangling_one_way_link || failed=`expr $failed + 1`
|
||||
testit "dangling_one_way_dn" dangling_one_way_dn || failed=`expr $failed + 1`
|
||||
testit "deleted_one_way_dn" deleted_one_way_dn || failed=`expr $failed + 1`
|
||||
testit "add_dangling_multi_valued" add_dangling_multi_valued || failed=`expr $failed + 1`
|
||||
|
||||
#Now things are set up, work with the DB
|
||||
testit "delete_member_of_deleted_group" delete_member_of_deleted_group
|
||||
testit "delete_backlink_memberof_deleted_group" delete_backlink_memberof_deleted_group
|
||||
testit "delete_dangling_backlink_memberof_group" delete_dangling_backlink_memberof_group
|
||||
else
|
||||
subunit_start_test $RELEASE
|
||||
subunit_skip_test $RELEASE <<EOF
|
||||
no test provision
|
||||
EOF
|
||||
testit "delete_member_of_deleted_group" delete_member_of_deleted_group || failed=`expr $failed + 1`
|
||||
testit "delete_backlink_memberof_deleted_group" delete_backlink_memberof_deleted_group || failed=`expr $failed + 1`
|
||||
testit "delete_dangling_backlink_memberof_group" delete_dangling_backlink_memberof_group || failed=`expr $failed + 1`
|
||||
|
||||
subunit_start_test "tombstones_expunge"
|
||||
subunit_skip_test "tombstones_expunge" <<EOF
|
||||
no test provision
|
||||
EOF
|
||||
fi
|
||||
|
||||
if [ -d $PREFIX_ABS/${RELEASE} ]; then
|
||||
rm -fr $PREFIX_ABS/${RELEASE}
|
||||
fi
|
||||
remove_directory $PREFIX_ABS/${RELEASE}
|
||||
|
||||
exit $failed
|
||||
|
Loading…
x
Reference in New Issue
Block a user