def testParse(self): defaults = { 'name': None, 'desc': None, 'obsolete': 0, 'sup': [], 'equality': None, 'ordering': None, 'substr': None, 'syntax': None, 'single_value': 0, 'collective': 0, 'no_user_modification': 0, 'usage': None, } for text, expected in self.knownValues: a = schema.AttributeTypeDescription(text) self.failIfEqual(a.oid, None) for key, want in expected.items(): if key in defaults: del defaults[key] got = getattr(a, key) self.assertEquals(got, want) for key, want in defaults.items(): got = getattr(a, key) self.assertEquals(got, want)
def _cb_testSimple(self, val, client): client.assertSent( pureldap.LDAPSearchRequest( baseObject="dc=example,dc=com", scope=pureldap.LDAP_SCOPE_baseObject, derefAliases=pureldap.LDAP_DEREF_neverDerefAliases, sizeLimit=1, timeLimit=0, typesOnly=0, filter=pureldap.LDAPFilter_present("objectClass"), attributes=["subschemaSubentry"], ), pureldap.LDAPSearchRequest( baseObject="cn=Subschema", scope=pureldap.LDAP_SCOPE_baseObject, derefAliases=pureldap.LDAP_DEREF_neverDerefAliases, sizeLimit=1, timeLimit=0, typesOnly=0, filter=pureldap.LDAPFilter_present("objectClass"), attributes=["attributeTypes", "objectClasses"], ), ) self.failUnlessEqual(len(val), 2) self.failUnlessEqual( [to_bytes(x) for x in val[0]], [to_bytes(schema.AttributeTypeDescription(self.cn))], ) self.failUnlessEqual( [to_bytes(x) for x in val[1]], [to_bytes(schema.ObjectClassDescription(self.dcObject))], )
def testParse(self): defaults = { "name": None, "desc": None, "obsolete": 0, "sup": [], "equality": None, "ordering": None, "substr": None, "syntax": None, "single_value": 0, "collective": 0, "no_user_modification": 0, "usage": None, } for text, expected in self.knownValues: a = schema.AttributeTypeDescription(text) self.failIfEqual(a.oid, None) for key, want in expected.items(): if key in defaults: del defaults[key] got = getattr(a, key) self.assertEqual(got, want) for key, want in defaults.items(): got = getattr(a, key) self.assertEqual(got, want)
def _cb_testSimple(self, val, client): client.assertSent( pureldap.LDAPSearchRequest( baseObject='dc=example,dc=com', scope=pureldap.LDAP_SCOPE_baseObject, derefAliases=pureldap.LDAP_DEREF_neverDerefAliases, sizeLimit=1, timeLimit=0, typesOnly=0, filter=pureldap.LDAPFilter_present('objectClass'), attributes=['subschemaSubentry']), pureldap.LDAPSearchRequest( baseObject='cn=Subschema', scope=pureldap.LDAP_SCOPE_baseObject, derefAliases=pureldap.LDAP_DEREF_neverDerefAliases, sizeLimit=1, timeLimit=0, typesOnly=0, filter=pureldap.LDAPFilter_present('objectClass'), attributes=['attributeTypes', 'objectClasses']), ) self.failUnlessEqual(len(val), 2) self.failUnlessEqual([str(x) for x in val[0]], [str(schema.AttributeTypeDescription(self.cn))]) self.failUnlessEqual( [str(x) for x in val[1]], [str(schema.ObjectClassDescription(self.dcObject))])
def testStringification(self): for want, values in self.knownValues: a = schema.AttributeTypeDescription(None) for key, val in values.items(): setattr(a, key, val) want = ' '.join(want.split(None)) got = ' '.join(str(a).split(None)) self.assertEquals(got, want)
def testSimple(self): d = fetchschema.fetch(self.client, 'dc=example,dc=com') (attributeTypes, objectClasses) = util.pumpingDeferredResult(d) self.failUnlessEqual( [to_bytes(x) for x in attributeTypes], [to_bytes(schema.AttributeTypeDescription(x)) for x in [ test_schema.AttributeType_KnownValues.knownValues[0][0]]]) self.failUnlessEqual( [to_bytes(x) for x in objectClasses], [to_bytes(schema.ObjectClassDescription(x)) for x in [ test_schema.OBJECTCLASSES['organization'], test_schema.OBJECTCLASSES['organizationalUnit']]])
def handleSearchResults(l): if len(l) == 0: raise ldaperrors.LDAPOther("No such DN") elif len(l) == 1: o = l[0] attributeTypes = [] objectClasses = [] for text in o.get("attributeTypes", []): attributeTypes.append(schema.AttributeTypeDescription(str(text))) for text in o.get("objectClasses", []): objectClasses.append(schema.ObjectClassDescription(str(text))) assert attributeTypes, "LDAP server doesn't give attributeTypes for subschemaSubentry dn=%s" % o.dn return (attributeTypes, objectClasses) else: raise ldaperrors.LDAPOther("DN matched multiple entries")