1
+ """
2
+ test LDAP operations with Python wrapper module
3
+ """
4
+
1
5
import os
2
6
import unittest
3
7
from slapdtest import SlapdTestCase
32
36
33
37
34
38
class TestSearch (SlapdTestCase ):
39
+ """
40
+ test LDAP search operations
41
+ """
35
42
36
43
ldap_object_class = LDAPObject
37
44
@@ -49,37 +56,71 @@ def setUp(self):
49
56
self ._ldap_conn = self ._open_ldap_conn ()
50
57
51
58
def test_search_subtree (self ):
52
- result = self ._ldap_conn .search_s (self .server .suffix , ldap .SCOPE_SUBTREE , '(cn=Foo*)' , ['*' ])
59
+ result = self ._ldap_conn .search_s (
60
+ self .server .suffix ,
61
+ ldap .SCOPE_SUBTREE ,
62
+ '(cn=Foo*)' ,
63
+ attrlist = ['*' ],
64
+ )
53
65
result .sort ()
54
- self .assertEquals (result ,
55
- [('cn=Foo1,' + self .server .suffix ,
56
- {'cn' : ['Foo1' ], 'objectClass' : ['organizationalRole' ]}),
57
- ('cn=Foo2,' + self .server .suffix ,
58
- {'cn' : ['Foo2' ], 'objectClass' : ['organizationalRole' ]}),
59
- ('cn=Foo3,' + self .server .suffix ,
60
- {'cn' : ['Foo3' ], 'objectClass' : ['organizationalRole' ]}),
61
- ('cn=Foo4,ou=Container,' + self .server .suffix ,
62
- {'cn' : ['Foo4' ], 'objectClass' : ['organizationalRole' ]}),
66
+ self .assertEquals (
67
+ result ,
68
+ [
69
+ (
70
+ 'cn=Foo1,' + self .server .suffix ,
71
+ {'cn' : ['Foo1' ], 'objectClass' : ['organizationalRole' ]}
72
+ ),
73
+ (
74
+ 'cn=Foo2,' + self .server .suffix ,
75
+ {'cn' : ['Foo2' ], 'objectClass' : ['organizationalRole' ]}
76
+ ),
77
+ (
78
+ 'cn=Foo3,' + self .server .suffix ,
79
+ {'cn' : ['Foo3' ], 'objectClass' : ['organizationalRole' ]}
80
+ ),
81
+ (
82
+ 'cn=Foo4,ou=Container,' + self .server .suffix ,
83
+ {'cn' : ['Foo4' ], 'objectClass' : ['organizationalRole' ]}
84
+ ),
63
85
]
64
86
)
65
87
66
88
def test_search_onelevel (self ):
67
- result = self ._ldap_conn .search_s (self .server .suffix , ldap .SCOPE_ONELEVEL , '(cn=Foo*)' , ['*' ])
89
+ result = self ._ldap_conn .search_s (
90
+ self .server .suffix ,
91
+ ldap .SCOPE_ONELEVEL ,
92
+ '(cn=Foo*)' ,
93
+ ['*' ],
94
+ )
68
95
result .sort ()
69
- self .assertEquals (result ,
70
- [('cn=Foo1,' + self .server .suffix ,
71
- {'cn' : ['Foo1' ], 'objectClass' : ['organizationalRole' ]}),
72
- ('cn=Foo2,' + self .server .suffix ,
73
- {'cn' : ['Foo2' ], 'objectClass' : ['organizationalRole' ]}),
74
- ('cn=Foo3,' + self .server .suffix ,
75
- {'cn' : ['Foo3' ], 'objectClass' : ['organizationalRole' ]}),
96
+ self .assertEquals (
97
+ result ,
98
+ [
99
+ (
100
+ 'cn=Foo1,' + self .server .suffix ,
101
+ {'cn' : ['Foo1' ], 'objectClass' : ['organizationalRole' ]}
102
+ ),
103
+ (
104
+ 'cn=Foo2,' + self .server .suffix ,
105
+ {'cn' : ['Foo2' ], 'objectClass' : ['organizationalRole' ]}
106
+ ),
107
+ (
108
+ 'cn=Foo3,' + self .server .suffix ,
109
+ {'cn' : ['Foo3' ], 'objectClass' : ['organizationalRole' ]}
110
+ ),
76
111
]
77
112
)
78
113
79
114
def test_search_oneattr (self ):
80
- result = self ._ldap_conn .search_s (self .server .suffix , ldap .SCOPE_SUBTREE , '(cn=Foo4)' , ['cn' ])
115
+ result = self ._ldap_conn .search_s (
116
+ self .server .suffix ,
117
+ ldap .SCOPE_SUBTREE ,
118
+ '(cn=Foo4)' ,
119
+ ['cn' ],
120
+ )
81
121
result .sort ()
82
- self .assertEquals (result ,
122
+ self .assertEquals (
123
+ result ,
83
124
[('cn=Foo4,ou=Container,' + self .server .suffix , {'cn' : ['Foo4' ]})]
84
125
)
85
126
0 commit comments