From: Kamen Mazdrashki Date: Sat, 8 May 2010 07:20:00 +0000 (+0300) Subject: s4/tort: Add test for comparing special DNs X-Git-Tag: samba-3.6.0pre1~2108 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=983606dbe0a23cab28d0f33a32a0e4ab0acf99a7;p=thirdparty%2Fsamba.git s4/tort: Add test for comparing special DNs --- diff --git a/source4/torture/ldb/ldb.c b/source4/torture/ldb/ldb.c index dbfd96c59b2..8bc6357e3dc 100644 --- a/source4/torture/ldb/ldb.c +++ b/source4/torture/ldb/ldb.c @@ -587,6 +587,7 @@ static bool torture_ldb_dn(struct torture_context *torture) struct ldb_dn *dn; struct ldb_dn *child_dn; struct ldb_dn *typo_dn; + struct ldb_dn *special_dn; struct ldb_val val; torture_assert(torture, @@ -656,6 +657,23 @@ static bool torture_ldb_dn(struct torture_context *torture) ldb_dn_compare_base(dn, typo_dn) != 0, "Base Comparison on dc=samba,dc=org and c=samba,dc=org should != 0"); + /* Check comparisons with a special DN */ + torture_assert(torture, + special_dn = ldb_dn_new(mem_ctx, ldb, "@special_dn"), + "Failed to create 'special' DN"); + + torture_assert(torture, + ldb_dn_compare(dn, special_dn) != 0, + "Comparison on dc=samba,dc=org and @special_dn should != 0"); + + torture_assert(torture, + ldb_dn_compare_base(special_dn, dn) > 0, + "Base Comparison of @special_dn and dc=samba,dc=org should > 0"); + + torture_assert(torture, + ldb_dn_compare_base(dn, special_dn) < 0, + "Base Comparison on dc=samba,dc=org and @special_dn should < 0"); + /* Check DN based on MS-ADTS:3.1.1.5.1.2 Naming Constraints*/ torture_assert(torture, dn = ldb_dn_new(mem_ctx, ldb, "CN=New\nLine,DC=SAMBA,DC=org"),