Imported Debian patch 4.0.5-6~numeezy
This commit is contained in:
committed by
Mario Fetka
parent
c44de33144
commit
10dfc9587b
@@ -26,13 +26,10 @@
|
||||
# The DM password needs to be set in ~/.ipa/.dmpw
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
import pytest
|
||||
import nose
|
||||
from nose.tools import assert_raises # pylint: disable=E0611
|
||||
import nss.nss as nss
|
||||
import six
|
||||
|
||||
from ipaserver.plugins.ldap2 import ldap2
|
||||
from ipalib.plugins.service import service, service_show
|
||||
@@ -42,17 +39,12 @@ from ipapython import ipautil
|
||||
from ipaplatform.paths import paths
|
||||
from ipapython.dn import DN
|
||||
|
||||
if six.PY3:
|
||||
unicode = str
|
||||
|
||||
|
||||
@pytest.mark.tier0
|
||||
class test_ldap(object):
|
||||
"""
|
||||
Test various LDAP client bind methods.
|
||||
"""
|
||||
|
||||
def setup(self):
|
||||
def setUp(self):
|
||||
self.conn = None
|
||||
self.ldapuri = 'ldap://%s' % ipautil.format_netloc(api.env.host)
|
||||
self.ccache = paths.TMP_KRB5CC % os.getuid()
|
||||
@@ -60,7 +52,7 @@ class test_ldap(object):
|
||||
self.dn = DN(('krbprincipalname','ldap/%s@%s' % (api.env.host, api.env.realm)),
|
||||
('cn','services'),('cn','accounts'),api.env.basedn)
|
||||
|
||||
def teardown(self):
|
||||
def tearDown(self):
|
||||
if self.conn and self.conn.isconnected():
|
||||
self.conn.disconnect()
|
||||
|
||||
@@ -68,7 +60,7 @@ class test_ldap(object):
|
||||
"""
|
||||
Test an anonymous LDAP bind using ldap2
|
||||
"""
|
||||
self.conn = ldap2(api, ldap_uri=self.ldapuri)
|
||||
self.conn = ldap2(shared_instance=False, ldap_uri=self.ldapuri)
|
||||
self.conn.connect()
|
||||
dn = api.env.basedn
|
||||
entry_attrs = self.conn.get_entry(dn, ['associateddomain'])
|
||||
@@ -81,7 +73,7 @@ class test_ldap(object):
|
||||
"""
|
||||
if not ipautil.file_exists(self.ccache):
|
||||
raise nose.SkipTest('Missing ccache %s' % self.ccache)
|
||||
self.conn = ldap2(api, ldap_uri=self.ldapuri)
|
||||
self.conn = ldap2(shared_instance=False, ldap_uri=self.ldapuri)
|
||||
self.conn.connect(ccache='FILE:%s' % self.ccache)
|
||||
entry_attrs = self.conn.get_entry(self.dn, ['usercertificate'])
|
||||
cert = entry_attrs.get('usercertificate')
|
||||
@@ -100,7 +92,7 @@ class test_ldap(object):
|
||||
fp.close()
|
||||
else:
|
||||
raise nose.SkipTest("No directory manager password in %s" % pwfile)
|
||||
self.conn = ldap2(api, ldap_uri=self.ldapuri)
|
||||
self.conn = ldap2(shared_instance=False, ldap_uri=self.ldapuri)
|
||||
self.conn.connect(bind_dn=DN(('cn', 'directory manager')), bind_pw=dm_password)
|
||||
entry_attrs = self.conn.get_entry(self.dn, ['usercertificate'])
|
||||
cert = entry_attrs.get('usercertificate')
|
||||
@@ -118,10 +110,10 @@ class test_ldap(object):
|
||||
# we need for the test.
|
||||
myapi = create_api(mode=None)
|
||||
myapi.bootstrap(context='cli', in_server=True, in_tree=True)
|
||||
myapi.add_plugin(ldap2)
|
||||
myapi.add_plugin(host)
|
||||
myapi.add_plugin(service)
|
||||
myapi.add_plugin(service_show)
|
||||
myapi.register(ldap2)
|
||||
myapi.register(host)
|
||||
myapi.register(service)
|
||||
myapi.register(service_show)
|
||||
myapi.finalize()
|
||||
|
||||
pwfile = api.env.dot_ipa + os.sep + ".dmpw"
|
||||
@@ -145,7 +137,7 @@ class test_ldap(object):
|
||||
Test an autobind LDAP bind using ldap2
|
||||
"""
|
||||
ldapuri = 'ldapi://%%2fvar%%2frun%%2fslapd-%s.socket' % api.env.realm.replace('.','-')
|
||||
self.conn = ldap2(api, ldap_uri=ldapuri)
|
||||
self.conn = ldap2(shared_instance=False, ldap_uri=ldapuri)
|
||||
try:
|
||||
self.conn.connect(autobind=True)
|
||||
except errors.ACIError:
|
||||
@@ -157,7 +149,6 @@ class test_ldap(object):
|
||||
assert serial is not None
|
||||
|
||||
|
||||
@pytest.mark.tier0
|
||||
class test_LDAPEntry(object):
|
||||
"""
|
||||
Test the LDAPEntry class
|
||||
@@ -167,14 +158,14 @@ class test_LDAPEntry(object):
|
||||
dn1 = DN(('cn', cn1[0]))
|
||||
dn2 = DN(('cn', cn2[0]))
|
||||
|
||||
def setup(self):
|
||||
def setUp(self):
|
||||
self.ldapuri = 'ldap://%s' % ipautil.format_netloc(api.env.host)
|
||||
self.conn = ldap2(api, ldap_uri=self.ldapuri)
|
||||
self.conn = ldap2(shared_instance=False, ldap_uri=self.ldapuri)
|
||||
self.conn.connect()
|
||||
|
||||
self.entry = self.conn.make_entry(self.dn1, cn=self.cn1)
|
||||
|
||||
def teardown(self):
|
||||
def tearDown(self):
|
||||
if self.conn and self.conn.isconnected():
|
||||
self.conn.disconnect()
|
||||
|
||||
@@ -218,7 +209,7 @@ class test_LDAPEntry(object):
|
||||
def test_popitem(self):
|
||||
e = self.entry
|
||||
assert e.popitem() == ('cn', self.cn1)
|
||||
list(e) == []
|
||||
e.keys() == []
|
||||
|
||||
def test_setdefault(self):
|
||||
e = self.entry
|
||||
@@ -247,19 +238,12 @@ class test_LDAPEntry(object):
|
||||
assert not e
|
||||
assert 'cn' not in e
|
||||
|
||||
@pytest.mark.skipif(sys.version_info >= (3, 0), reason="Python 2 only")
|
||||
def test_has_key(self):
|
||||
e = self.entry
|
||||
assert not e.has_key('xyz')
|
||||
assert e.has_key('cn')
|
||||
assert e.has_key('COMMONNAME')
|
||||
|
||||
def test_in(self):
|
||||
e = self.entry
|
||||
assert 'xyz' not in e
|
||||
assert 'cn' in e
|
||||
assert 'COMMONNAME' in e
|
||||
|
||||
def test_get(self):
|
||||
e = self.entry
|
||||
assert e.get('cn') == self.cn1
|
||||
@@ -309,7 +293,7 @@ class test_LDAPEntry(object):
|
||||
assert nice == [2, 3, u'5']
|
||||
assert raw == ['3', '5', '2']
|
||||
|
||||
raw = [b'a', b'b']
|
||||
raw = ['a', 'b']
|
||||
e.raw['test'] = raw
|
||||
assert e['test'] is not nice
|
||||
assert e['test'] == [u'a', u'b']
|
||||
@@ -317,7 +301,7 @@ class test_LDAPEntry(object):
|
||||
nice = 'not list'
|
||||
e['test'] = nice
|
||||
assert e['test'] is nice
|
||||
assert e.raw['test'] == [b'not list']
|
||||
assert e.raw['test'] == ['not list']
|
||||
|
||||
e.raw['test'].append('second')
|
||||
assert e['test'] == ['not list', u'second']
|
||||
|
||||
Reference in New Issue
Block a user