From e92f44782385be5315daa77f7821296f96ea729d Mon Sep 17 00:00:00 2001 From: Matthias Dieter Wallnöfer Date: Sun, 1 Aug 2010 21:12:50 +0200 Subject: s4:ldap.py - additional "instanceType" checks --- source4/dsdb/tests/python/ldap.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/source4/dsdb/tests/python/ldap.py b/source4/dsdb/tests/python/ldap.py index ea0aa3a3f9..728c537015 100755 --- a/source4/dsdb/tests/python/ldap.py +++ b/source4/dsdb/tests/python/ldap.py @@ -658,6 +658,7 @@ class BasicTests(unittest.TestCase): """Tests the 'instanceType' attribute""" print "Tests the 'instanceType' attribute""" + # The instance type is single-valued try: self.ldb.add({ "dn": "cn=ldaptestgroup,cn=users," + self.base_dn, @@ -667,6 +668,28 @@ class BasicTests(unittest.TestCase): except LdbError, (num, _): self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) + # The head NC flag cannot be set without the write flag + try: + self.ldb.add({ + "dn": "cn=ldaptestgroup,cn=users," + self.base_dn, + "objectclass": "group", + "instanceType": "1" }) + self.fail() + except LdbError, (num, _): + self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) + + # We cannot manipulate NCs without the head NC flag + try: + self.ldb.add({ + "dn": "cn=ldaptestgroup,cn=users," + self.base_dn, + "objectclass": "group", + "instanceType": "32" }) + self.fail() + except LdbError, (num, _): + self.assertEquals(num, ERR_UNWILLING_TO_PERFORM) + + + self.ldb.add({ "dn": "cn=ldaptestgroup,cn=users," + self.base_dn, "objectclass": "group"}) -- cgit