def test_compare_notInGroup(self): dn = 'cn=unix,ou=Groups,dc=example,dc=com' attribute_desc = pureldap.LDAPString('uniquemember') attribute_value = pureldap.LDAPString('uid=bgates,ou=People,dc=example,dc=com') ava = pureldap.LDAPAttributeValueAssertion(attribute_desc, attribute_value) self.server.dataReceived( pureldap.LDAPMessage( pureldap.LDAPCompareRequest(entry=dn, ava=ava), id=2).toWire()) self.assertEqual( self.server.transport.value(), pureldap.LDAPMessage( pureldap.LDAPCompareResponse( resultCode=ldaperrors.LDAPCompareFalse.resultCode), id=2).toWire())
def test_compare_outOfTree(self): dn = 'dc=invalid' attribute_desc = pureldap.LDAPString('objectClass') attribute_value = pureldap.LDAPString('groupOfUniqueNames') ava = pureldap.LDAPAttributeValueAssertion(attribute_desc, attribute_value) self.server.dataReceived( pureldap.LDAPMessage( pureldap.LDAPCompareRequest(entry=dn, ava=ava), id=2).toWire()) self.assertEqual( self.server.transport.value(), pureldap.LDAPMessage( pureldap.LDAPCompareResponse( resultCode=ldaperrors.LDAPNoSuchObject.resultCode), id=2).toWire())
def test_compare_inGroup(self): dn = "cn=unix,ou=Groups,dc=example,dc=com" attribute_desc = pureldap.LDAPString("uniquemember") attribute_value = pureldap.LDAPString( "uid=kthompson,ou=People,dc=example,dc=com") ava = pureldap.LDAPAttributeValueAssertion(attribute_desc, attribute_value) self.server.dataReceived( pureldap.LDAPMessage(pureldap.LDAPCompareRequest(entry=dn, ava=ava), id=2).toWire()) self.assertEqual( self.server.transport.value(), pureldap.LDAPMessage( pureldap.LDAPCompareResponse( resultCode=ldaperrors.LDAPCompareTrue.resultCode), id=2, ).toWire(), )
def _cbCompareOtherError(reason): return pureldap.LDAPCompareResponse( resultCode=ldaperrors.other, errorMessage=reason.getErrorMessage())
def _cbCompareLDAPError(reason): reason.trap(ldaperrors.LDAPException) return pureldap.LDAPCompareResponse( resultCode=reason.value.resultCode)
def _done(result_list): if result_list: resultCode = ldaperrors.LDAPCompareTrue.resultCode else: resultCode = ldaperrors.LDAPCompareFalse.resultCode return pureldap.LDAPCompareResponse(resultCode)