[SCM] Samba Shared Repository - branch master updated

Nadezhda Ivanova nivanova at samba.org
Wed Nov 24 17:29:02 MST 2010


The branch, master has been updated
       via  fc1da86 s4-tests: Modified speedtest.py to use samba.tests.delete_force
       via  21aceb1 s4-tests: Modified sec_descriptor.py to use samba.tests.delete_force
       via  9917525 s4-tests: Modified sam.py to use samba.tests.delete_force
       via  0d99a5f s4-tests: Modified passwords.py to use samba.tests.delete_force
       via  71af506 s4-tests: delete_force was unused, removed it.
       via  5e7d99a s4-tests: Modified ldap_schema.py to use samba.tests.delete_force
       via  d21d3e7 s4-tests: Modified ldap.py to use samba.tests.delete_force
       via  66aa40b s4-tests: Modified deletetest.py to use samba.tests.delete_force
       via  f42802e s4-tests: Modified bind.py to use samba.tests.delete_force
       via  d7731f6 s4-tests: Modified acly.py to use common delete_force instead of defining its own.
       via  db5bcb7 s4-tests: Added a common definition of delete_force.
      from  64424bb s4-smbtorture: pick a better printer in RPC-SPOOLSS-ACCESS.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit fc1da86d403c654fc96a6b1410147fe93dee0a39
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:16:14 2010 +0200

    s4-tests: Modified speedtest.py to use samba.tests.delete_force
    
    Autobuild-User: Nadezhda Ivanova <nivanova at samba.org>
    Autobuild-Date: Thu Nov 25 01:28:19 CET 2010 on sn-devel-104

commit 21aceb1374329b9738031d9d6143b2cb24c87f52
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:15:24 2010 +0200

    s4-tests: Modified sec_descriptor.py to use samba.tests.delete_force

commit 9917525b96f7fe4b3e4fb310614499f093ed5ca8
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:14:58 2010 +0200

    s4-tests: Modified sam.py to use samba.tests.delete_force

commit 0d99a5f27c13b1160777a570482d8481ae931375
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:13:47 2010 +0200

    s4-tests: Modified passwords.py to use samba.tests.delete_force

commit 71af5069507ef60bd4b73ee3943716d55e833252
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:13:24 2010 +0200

    s4-tests: delete_force was unused, removed it.

commit 5e7d99a5d84dfc723c9be26cb7617307aaa2fb23
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:12:42 2010 +0200

    s4-tests: Modified ldap_schema.py to use samba.tests.delete_force

commit d21d3e7db8e9b05daa17ca0e84b1b7f82b55a80e
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:12:18 2010 +0200

    s4-tests: Modified ldap.py to use samba.tests.delete_force

commit 66aa40b9d942664722f113f07d6024529da1fb14
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:11:57 2010 +0200

    s4-tests: Modified deletetest.py to use samba.tests.delete_force

commit f42802e22fa0f0a2026036d540cd5f3341870557
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Thu Nov 25 01:11:29 2010 +0200

    s4-tests: Modified bind.py to use samba.tests.delete_force

commit d7731f6f39eb4887a4f91a5b5dbc969b1b0596d2
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Wed Nov 24 17:48:56 2010 +0200

    s4-tests: Modified acly.py to use common delete_force instead of defining its own.

commit db5bcb7115991bb1289cad471190fd73139ea53e
Author: Nadezhda Ivanova <nivanova at samba.org>
Date:   Wed Nov 24 17:47:27 2010 +0200

    s4-tests: Added a common definition of delete_force.

-----------------------------------------------------------------------

Summary of changes:
 source4/auth/credentials/tests/bind.py           |    9 +-
 source4/dsdb/tests/python/acl.py                 |  115 +++++++-------
 source4/dsdb/tests/python/deletetest.py          |   32 ++--
 source4/dsdb/tests/python/ldap.py                |  181 +++++++++++-----------
 source4/dsdb/tests/python/ldap_schema.py         |   11 +-
 source4/dsdb/tests/python/ldap_syntaxes.py       |    5 -
 source4/dsdb/tests/python/passwords.py           |   19 +--
 source4/dsdb/tests/python/sam.py                 |  139 ++++++++---------
 source4/dsdb/tests/python/sec_descriptor.py      |  137 ++++++++---------
 source4/scripting/devel/speedtest.py             |   11 +-
 source4/scripting/python/samba/tests/__init__.py |    6 +
 11 files changed, 311 insertions(+), 354 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source4/auth/credentials/tests/bind.py b/source4/auth/credentials/tests/bind.py
index c59e714..8c93319 100755
--- a/source4/auth/credentials/tests/bind.py
+++ b/source4/auth/credentials/tests/bind.py
@@ -26,6 +26,7 @@ from samba import gensec
 from samba.samdb import SamDB
 from samba.credentials import Credentials
 import samba.tests
+from samba.tests import delete_force
 from subunit.run import SubunitTestRunner
 import unittest
 
@@ -70,18 +71,12 @@ class BindTests(samba.tests.TestCase):
         self.password = "P at ssw0rd"
         self.username = "BindTestUser_" + time.strftime("%s", time.gmtime())
 
-    def delete_force(self, ldb, dn):
-        try:
-            ldb.delete(dn)
-        except LdbError, (num, _):
-            self.assertEquals(num, ERR_NO_SUCH_OBJECT)
-
     def tearDown(self):
         super(BindTests, self).tearDown()
 
     def test_computer_account_bind(self):
         # create a computer acocount for the test
-        self.delete_force(ldb, self.computer_dn)
+        delete_force(ldb, self.computer_dn)
         ldb.add_ldif("""
 dn: """ + self.computer_dn + """
 cn: CENTOS53
diff --git a/source4/dsdb/tests/python/acl.py b/source4/dsdb/tests/python/acl.py
index c45399a..691f358 100755
--- a/source4/dsdb/tests/python/acl.py
+++ b/source4/dsdb/tests/python/acl.py
@@ -29,6 +29,7 @@ from samba import gensec
 from samba.samdb import SamDB
 from samba.credentials import Credentials
 import samba.tests
+from samba.tests import delete_force
 from subunit.run import SubunitTestRunner
 import unittest
 
@@ -58,12 +59,6 @@ creds.set_gensec_features(creds.get_gensec_features() | gensec.FEATURE_SEAL)
 
 class AclTests(samba.tests.TestCase):
 
-    def delete_force(self, ldb, dn):
-        try:
-            ldb.delete(dn)
-        except LdbError, (num, _):
-            self.assertEquals(num, ERR_NO_SUCH_OBJECT)
-
     def find_domain_sid(self, ldb):
         res = ldb.search(base=self.base_dn, expression="(objectClass=*)", scope=SCOPE_BASE)
         return ndr_unpack(security.dom_sid,res[0]["objectSid"][0])
@@ -175,15 +170,15 @@ class AclAddTests(AclTests):
 
     def tearDown(self):
         super(AclAddTests, self).tearDown()
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" %
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" %
                           (self.test_user1, self.ou2, self.base_dn))
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" %
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" %
                           (self.test_group1, self.ou2, self.base_dn))
-        self.delete_force(self.ldb_admin, "%s,%s" % (self.ou2, self.base_dn))
-        self.delete_force(self.ldb_admin, "%s,%s" % (self.ou1, self.base_dn))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.usr_admin_owner))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.usr_admin_not_owner))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.regular_user))
+        delete_force(self.ldb_admin, "%s,%s" % (self.ou2, self.base_dn))
+        delete_force(self.ldb_admin, "%s,%s" % (self.ou1, self.base_dn))
+        delete_force(self.ldb_admin, self.get_user_dn(self.usr_admin_owner))
+        delete_force(self.ldb_admin, self.get_user_dn(self.usr_admin_not_owner))
+        delete_force(self.ldb_admin, self.get_user_dn(self.regular_user))
 
     # Make sure top OU is deleted (and so everything under it)
     def assert_top_ou_deleted(self):
@@ -300,15 +295,15 @@ class AclModifyTests(AclTests):
 
     def tearDown(self):
         super(AclModifyTests, self).tearDown()
-        self.delete_force(self.ldb_admin, self.get_user_dn("test_modify_user1"))
-        self.delete_force(self.ldb_admin, "CN=test_modify_group1,CN=Users," + self.base_dn)
-        self.delete_force(self.ldb_admin, "CN=test_modify_group2,CN=Users," + self.base_dn)
-        self.delete_force(self.ldb_admin, "CN=test_modify_group3,CN=Users," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=test_modify_ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.user_with_wp))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.user_with_sm))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.user_with_group_sm))
-        self.delete_force(self.ldb_admin, self.get_user_dn("test_modify_user2"))
+        delete_force(self.ldb_admin, self.get_user_dn("test_modify_user1"))
+        delete_force(self.ldb_admin, "CN=test_modify_group1,CN=Users," + self.base_dn)
+        delete_force(self.ldb_admin, "CN=test_modify_group2,CN=Users," + self.base_dn)
+        delete_force(self.ldb_admin, "CN=test_modify_group3,CN=Users," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=test_modify_ou1," + self.base_dn)
+        delete_force(self.ldb_admin, self.get_user_dn(self.user_with_wp))
+        delete_force(self.ldb_admin, self.get_user_dn(self.user_with_sm))
+        delete_force(self.ldb_admin, self.get_user_dn(self.user_with_group_sm))
+        delete_force(self.ldb_admin, self.get_user_dn("test_modify_user2"))
 
     def test_modify_u1(self):
         """5 Modify one attribute if you have DS_WRITE_PROPERTY for it"""
@@ -340,7 +335,7 @@ displayName: test_changed"""
         self.assertEqual(res[0]["displayName"][0], "test_changed")
         # Third test object -- Organizational Unit
         print "Testing modify on OU object"
-        #self.delete_force(self.ldb_admin, "OU=test_modify_ou1," + self.base_dn)
+        #delete_force(self.ldb_admin, "OU=test_modify_ou1," + self.base_dn)
         self.ldb_admin.create_ou("OU=test_modify_ou1," + self.base_dn)
         self.dacl_add_ace("OU=test_modify_ou1," + self.base_dn, mod)
         ldif = """
@@ -357,7 +352,7 @@ displayName: test_changed"""
         mod = "(OA;;WP;bf967953-0de6-11d0-a285-00aa003049e2;;%s)" % str(self.user_sid)
         # First test object -- User
         print "Testing modify on User object"
-        #self.delete_force(self.ldb_admin, self.get_user_dn("test_modify_user1"))
+        #delete_force(self.ldb_admin, self.get_user_dn("test_modify_user1"))
         self.ldb_admin.newuser("test_modify_user1", self.user_pass)
         self.dacl_add_ace(self.get_user_dn("test_modify_user1"), mod)
         # Modify on attribute you have rights for
@@ -477,7 +472,7 @@ url: www.samba.org"""
 
         # Second test object -- Organizational Unit
         print "Testing modify on OU object"
-        #self.delete_force(self.ldb_admin, "OU=test_modify_ou1," + self.base_dn)
+        #delete_force(self.ldb_admin, "OU=test_modify_ou1," + self.base_dn)
         self.ldb_admin.create_ou("OU=test_modify_ou1," + self.base_dn)
         # Modify on attribute you do not have rights for granted
         ldif = """
@@ -666,18 +661,18 @@ class AclSearchTests(AclTests):
 
     def tearDown(self):
         super(AclSearchTests, self).tearDown()
-        self.delete_force(self.ldb_admin, "OU=test_search_ou2,OU=test_search_ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=test_search_ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=ou6,OU=ou4,OU=ou2,OU=ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=ou5,OU=ou3,OU=ou2,OU=ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=ou4,OU=ou2,OU=ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=ou3,OU=ou2,OU=ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=ou2,OU=ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "OU=ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, self.get_user_dn("search_u1"))
-        self.delete_force(self.ldb_admin, self.get_user_dn("search_u2"))
-        self.delete_force(self.ldb_admin, self.get_user_dn("search_u3"))
-        self.delete_force(self.ldb_admin, self.get_user_dn("group1"))
+        delete_force(self.ldb_admin, "OU=test_search_ou2,OU=test_search_ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=test_search_ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=ou6,OU=ou4,OU=ou2,OU=ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=ou5,OU=ou3,OU=ou2,OU=ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=ou4,OU=ou2,OU=ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=ou3,OU=ou2,OU=ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=ou2,OU=ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "OU=ou1," + self.base_dn)
+        delete_force(self.ldb_admin, self.get_user_dn("search_u1"))
+        delete_force(self.ldb_admin, self.get_user_dn("search_u2"))
+        delete_force(self.ldb_admin, self.get_user_dn("search_u3"))
+        delete_force(self.ldb_admin, self.get_user_dn("group1"))
 
     def test_search_anonymous1(self):
         """Verify access of rootDSE with the correct request"""
@@ -982,8 +977,8 @@ class AclDeleteTests(AclTests):
 
     def tearDown(self):
         super(AclDeleteTests, self).tearDown()
-        self.delete_force(self.ldb_admin, self.get_user_dn("test_delete_user1"))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.regular_user))
+        delete_force(self.ldb_admin, self.get_user_dn("test_delete_user1"))
+        delete_force(self.ldb_admin, self.get_user_dn(self.regular_user))
 
     def test_delete_u1(self):
         """User is prohibited by default to delete another User object"""
@@ -1044,22 +1039,22 @@ class AclRenameTests(AclTests):
     def tearDown(self):
         super(AclRenameTests, self).tearDown()
         # Rename OU3
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser1, self.ou3, self.base_dn))
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser2, self.ou3, self.base_dn))
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser5, self.ou3, self.base_dn))
-        self.delete_force(self.ldb_admin, "%s,%s" % (self.ou3, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser1, self.ou3, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser2, self.ou3, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser5, self.ou3, self.base_dn))
+        delete_force(self.ldb_admin, "%s,%s" % (self.ou3, self.base_dn))
         # Rename OU2
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser1, self.ou2, self.base_dn))
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser2, self.ou2, self.base_dn))
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser5, self.ou2, self.base_dn))
-        self.delete_force(self.ldb_admin, "%s,%s" % (self.ou2, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser1, self.ou2, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser2, self.ou2, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser5, self.ou2, self.base_dn))
+        delete_force(self.ldb_admin, "%s,%s" % (self.ou2, self.base_dn))
         # Rename OU1
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser1, self.ou1, self.base_dn))
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser2, self.ou1, self.base_dn))
-        self.delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser5, self.ou1, self.base_dn))
-        self.delete_force(self.ldb_admin, "OU=test_rename_ou3,%s,%s" % (self.ou1, self.base_dn))
-        self.delete_force(self.ldb_admin, "%s,%s" % (self.ou1, self.base_dn))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.regular_user))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser1, self.ou1, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser2, self.ou1, self.base_dn))
+        delete_force(self.ldb_admin, "CN=%s,%s,%s" % (self.testuser5, self.ou1, self.base_dn))
+        delete_force(self.ldb_admin, "OU=test_rename_ou3,%s,%s" % (self.ou1, self.base_dn))
+        delete_force(self.ldb_admin, "%s,%s" % (self.ou1, self.base_dn))
+        delete_force(self.ldb_admin, self.get_user_dn(self.regular_user))
 
     def test_rename_u1(self):
         """Regular user fails to rename 'User object' within single OU"""
@@ -1271,8 +1266,8 @@ class AclCARTests(AclTests):
         #restore original values
         self.ldb_admin.set_dsheuristics(self.dsheuristics)
         self.ldb_admin.set_minPwdAge(self.minPwdAge)
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.user_with_wp))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.user_with_pc))
+        delete_force(self.ldb_admin, self.get_user_dn(self.user_with_wp))
+        delete_force(self.ldb_admin, self.get_user_dn(self.user_with_pc))
 
     def test_change_password1(self):
         """Try a password change operation without any CARs given"""
@@ -1553,11 +1548,11 @@ class AclExtendedTests(AclTests):
 
     def tearDown(self):
         super(AclExtendedTests, self).tearDown()
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.u1))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.u2))
-        self.delete_force(self.ldb_admin, self.get_user_dn(self.u3))
-        self.delete_force(self.ldb_admin, "CN=ext_group1,OU=ext_ou1," + self.base_dn)
-        self.delete_force(self.ldb_admin, "ou=ext_ou1," + self.base_dn)
+        delete_force(self.ldb_admin, self.get_user_dn(self.u1))
+        delete_force(self.ldb_admin, self.get_user_dn(self.u2))
+        delete_force(self.ldb_admin, self.get_user_dn(self.u3))
+        delete_force(self.ldb_admin, "CN=ext_group1,OU=ext_ou1," + self.base_dn)
+        delete_force(self.ldb_admin, "ou=ext_ou1," + self.base_dn)
 
     def test_ntSecurityDescriptor(self):
         #create empty ou
diff --git a/source4/dsdb/tests/python/deletetest.py b/source4/dsdb/tests/python/deletetest.py
index aec6b8c..4ed125d 100755
--- a/source4/dsdb/tests/python/deletetest.py
+++ b/source4/dsdb/tests/python/deletetest.py
@@ -17,6 +17,7 @@ from ldb import SCOPE_BASE, LdbError
 from ldb import ERR_NO_SUCH_OBJECT, ERR_NOT_ALLOWED_ON_NON_LEAF
 from ldb import ERR_UNWILLING_TO_PERFORM
 from samba.samdb import SamDB
+from samba.tests import delete_force
 
 from subunit.run import SubunitTestRunner
 import unittest
@@ -41,11 +42,6 @@ creds = credopts.get_credentials(lp)
 
 class BasicDeleteTests(unittest.TestCase):
 
-    def delete_force(self, ldb, dn):
-        try:
-            ldb.delete(dn)
-        except LdbError, (num, _):
-            self.assertEquals(num, ERR_NO_SUCH_OBJECT)
 
     def GUID_string(self, guid):
         return self.ldb.schema_format_value("objectGUID", guid)
@@ -118,9 +114,9 @@ class BasicDeleteTests(unittest.TestCase):
 
         print self.base_dn
 
-        self.delete_force(self.ldb, "cn=entry1,cn=ldaptestcontainer," + self.base_dn)
-        self.delete_force(self.ldb, "cn=entry2,cn=ldaptestcontainer," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=entry1,cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=entry2,cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
 
         ldb.add({
             "dn": "cn=ldaptestcontainer," + self.base_dn,
@@ -159,9 +155,9 @@ class BasicDeleteTests(unittest.TestCase):
         except LdbError, (num, _):
             self.assertEquals(num, ERR_NO_SUCH_OBJECT)
 
-        self.delete_force(self.ldb, "cn=entry1,cn=ldaptestcontainer," + self.base_dn)
-        self.delete_force(self.ldb, "cn=entry2,cn=ldaptestcontainer," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=entry1,cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=entry2,cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
 
         # Performs some protected object delete testing
 
@@ -258,13 +254,13 @@ class BasicDeleteTests(unittest.TestCase):
         srv1="cn=Servers,cn=testsite1,cn=sites," + self.configuration_dn
         srv2="cn=TESTSRV,cn=Servers,cn=testsite1,cn=sites," + self.configuration_dn
 
-        self.delete_force(self.ldb, usr1)
-        self.delete_force(self.ldb, usr2)
-        self.delete_force(self.ldb, grp1)
-        self.delete_force(self.ldb, ss1)
-        self.delete_force(self.ldb, srv2)
-        self.delete_force(self.ldb, srv1)
-        self.delete_force(self.ldb, sit1)
+        delete_force(self.ldb, usr1)
+        delete_force(self.ldb, usr2)
+        delete_force(self.ldb, grp1)
+        delete_force(self.ldb, ss1)
+        delete_force(self.ldb, srv2)
+        delete_force(self.ldb, srv1)
+        delete_force(self.ldb, sit1)
 
         ldb.add({
             "dn": usr1,
diff --git a/source4/dsdb/tests/python/ldap.py b/source4/dsdb/tests/python/ldap.py
index 9caca7e..f11176b 100755
--- a/source4/dsdb/tests/python/ldap.py
+++ b/source4/dsdb/tests/python/ldap.py
@@ -40,6 +40,7 @@ import unittest
 
 from samba.ndr import ndr_pack, ndr_unpack
 from samba.dcerpc import security
+from samba.tests import delete_force
 
 parser = optparse.OptionParser("ldap.py [options] <host>")
 sambaopts = options.SambaOptions(parser)
@@ -61,12 +62,6 @@ creds = credopts.get_credentials(lp)
 
 class BasicTests(unittest.TestCase):
 
-    def delete_force(self, ldb, dn):
-        try:
-            ldb.delete(dn)
-        except LdbError, (num, _):
-            self.assertEquals(num, ERR_NO_SUCH_OBJECT)
-
     def find_domain_sid(self):
         res = self.ldb.search(base=self.base_dn, expression="(objectClass=*)", scope=SCOPE_BASE)
         return ndr_unpack( security.dom_sid,res[0]["objectSid"][0])
@@ -82,29 +77,29 @@ class BasicTests(unittest.TestCase):
 
         print "baseDN: %s\n" % self.base_dn
 
-        self.delete_force(self.ldb, "cn=posixuser,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestuser2,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestuser3,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestuser4,cn=ldaptestcontainer," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestuser4,cn=ldaptestcontainer2," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestuser5,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestgroup2,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptest2computer,cn=computers," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestcomputer3,cn=computers," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestutf8user èùéìòà,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestutf8user2  èùéìòà,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestcontainer2," + self.base_dn)
-        self.delete_force(self.ldb, "cn=parentguidtest,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=parentguidtest,cn=testotherusers," + self.base_dn)
-        self.delete_force(self.ldb, "cn=testotherusers," + self.base_dn)
-        self.delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
-        self.delete_force(self.ldb, "description=xyz,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "ou=testou,cn=users," + self.base_dn)
-        self.delete_force(self.ldb, "cn=testsecret,cn=system," + self.base_dn)
+        delete_force(self.ldb, "cn=posixuser,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser2,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser3,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser4,cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser4,cn=ldaptestcontainer2," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser5,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestgroup2,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestcomputer,cn=computers," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptest2computer,cn=computers," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestcomputer3,cn=computers," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestutf8user èùéìòà,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestutf8user2  èùéìòà,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestcontainer2," + self.base_dn)
+        delete_force(self.ldb, "cn=parentguidtest,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=parentguidtest,cn=testotherusers," + self.base_dn)
+        delete_force(self.ldb, "cn=testotherusers," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
+        delete_force(self.ldb, "description=xyz,cn=users," + self.base_dn)
+        delete_force(self.ldb, "ou=testou,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=testsecret,cn=system," + self.base_dn)
 
     def test_objectclasses(self):
         """Test objectClass behaviour"""
@@ -177,7 +172,7 @@ class BasicTests(unittest.TestCase):
         self.assertTrue(len(res) == 1)
         self.assertEquals(res[0]["systemFlags"][0], "0")
 
-        self.delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
 
         self.ldb.add({
              "dn": "cn=ldaptestuser,cn=users," + self.base_dn,
@@ -365,7 +360,7 @@ objectClass: bootableDevice
           "objectClass")
         ldb.modify(m)
 
-        self.delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
 
     def test_system_only(self):
         """Test systemOnly objects"""
@@ -387,8 +382,8 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
 
-        self.delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
-        self.delete_force(self.ldb, "cn=testsecret,cn=system," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
+        delete_force(self.ldb, "cn=testsecret,cn=system," + self.base_dn)
 
         try:
             self.ldb.add({
@@ -413,7 +408,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
 
-        self.delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestcontainer," + self.base_dn)
 
         # Proof if DC SAM object has "isCriticalSystemObject" set
         res = self.ldb.search("", scope=SCOPE_BASE, attrs=["serverName"])
@@ -442,7 +437,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_NO_SUCH_OBJECT)
 
-        self.delete_force(self.ldb, "cn=ldaptestgroup,cn=thisdoesnotexist123,"
+        delete_force(self.ldb, "cn=ldaptestgroup,cn=thisdoesnotexist123,"
           + self.base_dn)
 
         try:
@@ -453,7 +448,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_NAMING_VIOLATION)
 
-        self.delete_force(self.ldb, "ou=testou,cn=users," + self.base_dn)
+        delete_force(self.ldb, "ou=testou,cn=users," + self.base_dn)
 
     def test_invalid_attribute(self):
         """Test invalid attributes on schema/objectclasses"""
@@ -488,7 +483,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
 
-        self.delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
 
         # attributes not in objectclasses and mandatory attributes missing test
         # Use here a non-SAM entry since it doesn't have special triggers
@@ -555,7 +550,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_OBJECT_CLASS_VIOLATION)
 
-        self.delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestobject," + self.base_dn)
 
     def test_single_valued_attributes(self):
         """Test single-valued attributes"""
@@ -600,7 +595,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_ATTRIBUTE_OR_VALUE_EXISTS)
 
-        self.delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
 
     def test_attribute_ranges(self):
         """Test attribute ranges"""
@@ -655,7 +650,7 @@ objectClass: bootableDevice
         m["sn"] = MessageElement("x", FLAG_MOD_REPLACE, "sn")
         ldb.modify(m)
 
-        self.delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestuser,cn=users," + self.base_dn)
 
     def test_empty_messages(self):
         """Test empty messages"""
@@ -676,7 +671,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_UNWILLING_TO_PERFORM)
 
-        self.delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
 
     def test_empty_attributes(self):
         """Test empty attributes"""
@@ -721,7 +716,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):
             self.assertEquals(num, ERR_NO_SUCH_ATTRIBUTE)
 
-        self.delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
+        delete_force(self.ldb, "cn=ldaptestgroup,cn=users," + self.base_dn)
 
     def test_instanceType(self):
         """Tests the 'instanceType' attribute"""
@@ -790,7 +785,7 @@ objectClass: bootableDevice
         except LdbError, (num, _):


-- 
Samba Shared Repository


More information about the samba-cvs mailing list