diff options
author | Andreas Schneider <asn@samba.org> | 2020-10-21 17:35:34 +0200 |
---|---|---|
committer | Karolin Seeger <kseeger@samba.org> | 2020-10-27 08:22:02 +0000 |
commit | 2aad79378ad8aec28026649157bad4c229ab22c0 (patch) | |
tree | b750ed6fb1b8c59ac25b5871ff9a6e54346904e7 | |
parent | 62e97089a880a613cbb9bfd038e276390fe6dda6 (diff) | |
download | samba-2aad79378ad8aec28026649157bad4c229ab22c0.tar.gz |
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>
(cherry picked from commit a9765084f11eae991516f150d1cd1c2370854ec7)
-rw-r--r-- | testprogs/blackbox/common-links.sh | 16 | ||||
-rwxr-xr-x | testprogs/blackbox/runtime-links.sh | 65 |
2 files changed, 44 insertions, 37 deletions
diff --git a/testprogs/blackbox/common-links.sh b/testprogs/blackbox/common-links.sh index ee7310b5108..363234ae11c 100644 --- a/testprogs/blackbox/common-links.sh +++ b/testprogs/blackbox/common-links.sh @@ -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() { diff --git a/testprogs/blackbox/runtime-links.sh b/testprogs/blackbox/runtime-links.sh index 344b822f07e..f8de66c60e7 100755 --- a/testprogs/blackbox/runtime-links.sh +++ b/testprogs/blackbox/runtime-links.sh @@ -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 - - subunit_start_test "tombstones_expunge" - subunit_skip_test "tombstones_expunge" <<EOF -no test provision -EOF -fi +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` -if [ -d $PREFIX_ABS/${RELEASE} ]; then - rm -fr $PREFIX_ABS/${RELEASE} -fi +remove_directory $PREFIX_ABS/${RELEASE} exit $failed |