s4-tests: Added some additional attribute checks to the tests for anonymous bind...
authorNadezhda Ivanova <nivanova@samba.org>
Thu, 12 Aug 2010 07:00:58 +0000 (10:00 +0300)
committerNadezhda Ivanova <nivanova@samba.org>
Thu, 12 Aug 2010 07:30:14 +0000 (10:30 +0300)
source4/dsdb/tests/python/acl.py

index 2e686772e5167613491056da508a079df7841dc9..2bc67e5beefebf9ffe990b215b9c82f33a72806d 100755 (executable)
@@ -18,7 +18,7 @@ from ldb import (
     SCOPE_BASE, SCOPE_SUBTREE, LdbError, ERR_NO_SUCH_OBJECT,
     ERR_UNWILLING_TO_PERFORM, ERR_INSUFFICIENT_ACCESS_RIGHTS)
 from ldb import ERR_CONSTRAINT_VIOLATION
-from ldb import ERR_OPERATIONS_ERROR
+from ldb import ERR_OPERATIONS_ERROR, ERR_NO_SUCH_ATTRIBUTE
 from ldb import Message, MessageElement, Dn
 from ldb import FLAG_MOD_REPLACE, FLAG_MOD_DELETE
 from samba.ndr import ndr_pack, ndr_unpack
@@ -234,7 +234,10 @@ url: www.example.com
                                                "dSHeuristics")
         else:
             m["dSHeuristics"] = MessageElement([], FLAG_MOD_DELETE, "dsHeuristics")
-        self.ldb_admin.modify(m)
+        try:
+            self.ldb_admin.modify(m)
+        except LdbError, (num, _):
+            self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
 
     def set_minPwdAge(self, value):
         m = Message()
@@ -725,7 +728,17 @@ class AclSearchTests(AclTests):
         self.assertTrue("supportedSASLMechanisms" in res[0])
         self.assertTrue("isGlobalCatalogReady" in res[0])
         self.assertTrue("domainControllerFunctionality" in res[0])
+        self.assertTrue("supportedLDAPVersion" in res[0])
+        self.assertTrue("highestCommittedUSN" in res[0])
+        self.assertTrue("defaultNamingContext" in res[0])
+        self.assertTrue("schemaNamingContext" in res[0])
+        self.assertTrue("supportedCapabilities" in res[0])
         self.assertTrue("serverName" in res[0])
+        self.assertTrue("rootDomainNamingContext" in res[0])
+        self.assertTrue("dnsHostName" in res[0])
+        self.assertTrue("domainFunctionality" in res[0])
+        self.assertTrue("serverName" in res[0])
+        self.assertTrue("forestFunctionality" in res[0])
 
     def test_search_anonymous2(self):
         """Make sure we cannot access anything else"""
@@ -763,7 +776,7 @@ class AclSearchTests(AclTests):
         self.assertTrue(res[0]["dn"] == Dn(self.ldb_admin,
                                            "OU=test_search_ou2,OU=test_search_ou1," + self.base_dn))
         res = self.anonymous.search("CN=Configuration," + self.base_dn, expression="(objectClass=*)",
-                                    scope=SCOPE_SUBTREE)
+                                    scope=SCOPE_BASE)
         self.assertEquals(len(res), 1)
         self.assertTrue("dn" in res[0])
         self.assertTrue(res[0]["dn"] == Dn(self.ldb_admin, self.configuration_dn))
@@ -1329,5 +1342,7 @@ if not runner.run(unittest.makeSuite(AclRenameTests)).wasSuccessful():
     rc = 1
 if not runner.run(unittest.makeSuite(AclCARTests)).wasSuccessful():
     rc = 1
+if not runner.run(unittest.makeSuite(AclSearchTests)).wasSuccessful():
+    rc = 1
 
 sys.exit(rc)