Skip to content

Commit

Permalink
Use SlapdTestCase in t_bind and t_edit
Browse files Browse the repository at this point in the history
Both test modules used to set up their own server instance. t_edit
didn't clean up properly. Let's use SlapdTestCase test class everywhere.

https://github.com/python-ldap/python-ldap/pull/58
Signed-off-by: Christian Heimes <cheimes@redhat.com>
  • Loading branch information
Christian Heimes authored and Petr Viktorin committed Nov 30, 2017
1 parent 0d48145 commit 53fa5b7
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 66 deletions.
22 changes: 6 additions & 16 deletions Tests/t_bind.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,25 +10,15 @@
text_type = str

import ldap, unittest
from slapdtest import SlapdObject
from slapdtest import SlapdTestCase
from ldap.ldapobject import LDAPObject

class TestBinds(unittest.TestCase):

@classmethod
def setUpClass(cls):
cls.server = SlapdObject()
cls.server.start()

cls.unicode_val = "abc\U0001f498def"
cls.unicode_val_bytes = cls.unicode_val.encode('utf-8')

cls.dn_unicode = "CN=" + cls.unicode_val
cls.dn_bytes = cls.dn_unicode.encode('utf-8')

@classmethod
def tearDownClass(cls):
cls.server.stop()
class TestBinds(SlapdTestCase):
unicode_val = "abc\U0001f498def"
unicode_val_bytes = unicode_val.encode('utf-8')
dn_unicode = "CN=" + unicode_val
dn_bytes = dn_unicode.encode('utf-8')

def _get_ldapobject(self, bytes_mode=None):
l = LDAPObject(self.server.ldap_uri, bytes_mode=bytes_mode)
Expand Down
100 changes: 50 additions & 50 deletions Tests/t_edit.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,64 +10,64 @@
text_type = str

import ldap, unittest
from slapdtest import SlapdObject
from slapdtest import SlapdTestCase

from ldap.ldapobject import LDAPObject

server = None

class EditionTests(SlapdTestCase):

class EditionTests(unittest.TestCase):
@classmethod
def setUpClass(cls):
super(EditionTests, cls).setUpClass()
base = cls.server.suffix
suffix_dc = base.split(',')[0][3:]

def setUp(self):
global server
if server is None:
server = SlapdObject()
server.start()
base = server.suffix
suffix_dc = base.split(',')[0][3:]
# insert some Foo* objects via ldapadd
cls.server.ldapadd("\n".join([
'dn: '+cls.server.suffix,
'objectClass: dcObject',
'objectClass: organization',
'dc: '+suffix_dc,
'o: '+suffix_dc,
'',
'dn: '+cls.server.root_dn,
'objectClass: applicationProcess',
'cn: '+cls.server.root_cn,
'',
"dn: cn=Foo1,"+base,
"objectClass: organizationalRole",
"cn: Foo1",
"",
"dn: cn=Foo2,"+base,
"objectClass: organizationalRole",
"cn: Foo2",
"",
"dn: cn=Foo3,"+base,
"objectClass: organizationalRole",
"cn: Foo3",
"",
"dn: ou=Container,"+base,
"objectClass: organizationalUnit",
"ou: Container",
"",
"dn: cn=Foo4,ou=Container,"+base,
"objectClass: organizationalRole",
"cn: Foo4",
"",
])+"\n")

# insert some Foo* objects via ldapadd
server.ldapadd("\n".join([
'dn: '+server.suffix,
'objectClass: dcObject',
'objectClass: organization',
'dc: '+suffix_dc,
'o: '+suffix_dc,
'',
'dn: '+server.root_dn,
'objectClass: applicationProcess',
'cn: '+server.root_cn,
'',
"dn: cn=Foo1,"+base,
"objectClass: organizationalRole",
"cn: Foo1",
"",
"dn: cn=Foo2,"+base,
"objectClass: organizationalRole",
"cn: Foo2",
"",
"dn: cn=Foo3,"+base,
"objectClass: organizationalRole",
"cn: Foo3",
"",
"dn: ou=Container,"+base,
"objectClass: organizationalUnit",
"ou: Container",
"",
"dn: cn=Foo4,ou=Container,"+base,
"objectClass: organizationalRole",
"cn: Foo4",
"",
])+"\n")
def setUp(self):
self.ldap = LDAPObject(self.server.ldap_uri, bytes_mode=False)
self.ldap.protocol_version = 3
self.ldap.set_option(ldap.OPT_REFERRALS, 0)
self.ldap.simple_bind_s(
self.server.root_dn,
self.server.root_pw
)

l = LDAPObject(server.ldap_uri, bytes_mode=False)
l.protocol_version = 3
l.set_option(ldap.OPT_REFERRALS,0)
l.simple_bind_s(server.root_dn,
server.root_pw)
self.ldap = l
self.server = server
def tearDown(self):
self.ldap.unbind()

def test_add_object(self):
base = self.server.suffix
Expand Down

0 comments on commit 53fa5b7

Please sign in to comment.