(ldap.MOD_REPLACE, "sn", "3"), (ldap.MOD_ADD, "sn", "4"), (ldap.MOD_DELETE, "sn", "3"), (ldap.MOD_ADD, "sn", "5"), (ldap.MOD_REPLACE, "sn", ["6", "7", "8"]), ] expectval = "5" expectvalsn = ["6", "7", "8"] m1.modify_s(dn, mod) time.sleep(5) print "search for entry on m2 . . ." attrlist = ["cn", "sn", "nscpentrywsi"] ents = m2.search_s(dn, ldap.SCOPE_BASE, "objectclass=*", attrlist) ent = ents[0] if ent.cn == expectval and ent.hasValue("sn", expectvalsn): print "value of m2 entry is correct" else: print "value of m2 entry is not correct:", ent.cn print "value of m2 entry is not correct:", ent.sn print "entrywsi:", str(ent) print "search for entry on m1 . . ." ents = m1.search_s(dn, ldap.SCOPE_BASE, "objectclass=*", attrlist) ent = ents[0] if ent.cn == expectval and ent.hasValue("sn", expectvalsn): print "value of m1 entry is correct" else: print "value of m1 entry is not correct:", ent.cn print "value of m1 entry is not correct:", ent.sn print "entrywsi:", str(ent)
(ldap.MOD_ADD, 'sn', '2'), (ldap.MOD_REPLACE, 'sn', '3'), (ldap.MOD_ADD, 'sn', '4'), (ldap.MOD_DELETE, 'sn', '3'), (ldap.MOD_ADD, 'sn', '5'), (ldap.MOD_REPLACE, 'sn', ['6', '7', '8'])] expectval = '5' expectvalsn = ['6', '7', '8'] m1.modify_s(dn, mod) time.sleep(5) print "search for entry on m2 . . ." attrlist = ['cn', 'sn', 'nscpentrywsi'] ents = m2.search_s(dn, ldap.SCOPE_BASE, 'objectclass=*', attrlist) ent = ents[0] if ent.cn == expectval and ent.hasValue('sn', expectvalsn): print "value of m2 entry is correct" else: print "value of m2 entry is not correct:", ent.cn print "value of m2 entry is not correct:", ent.sn print "entrywsi:", str(ent) print "search for entry on m1 . . ." ents = m1.search_s(dn, ldap.SCOPE_BASE, 'objectclass=*', attrlist) ent = ents[0] if ent.cn == expectval and ent.hasValue('sn', expectvalsn): print "value of m1 entry is correct" else: print "value of m1 entry is not correct:", ent.cn print "value of m1 entry is not correct:", ent.sn print "entrywsi:", str(ent)
print "Delete description attr in all entries . . ." for ii in myiter: dn = "cn=%d, %s" % (ii, basedn) jj = ii + 1 svr = (m1,m2)[jj % 2] delit = [(ldap.MOD_DELETE, 'description', None)] svr.modify_s(dn, delit) print "Modified", dn print "Sleep for 20 seconds to let changes propagate . . ." time.sleep(20) print "Verify all entries are modified . . ." for ii in myiter: dn = "cn=%d, %s" % (ii, basedn) ent = m1.getEntry(dn, ldap.SCOPE_BASE) if ent.hasValue('description', 'added description'): raise "Entry %s in %s has description" % (dn, m1) ent = m2.getEntry(dn, ldap.SCOPE_BASE) if ent.hasValue('description', 'added description'): raise "Entry %s in %s has description" % (dn, m2) print "Delete all entries . . ." for ii in myiter: dn = "cn=%d, %s" % (ii, basedn) jj = ii + 1 svr = (m1,m2)[jj % 2] svr.delete_s(dn) print "Deleted", dn print "Sleep for 20 seconds to let changes propagate . . ." time.sleep(20) print "Verify all entries are deleted . . ." for ii in myiter:
(ldap.MOD_ADD, 'cn', '5'), (ldap.MOD_DELETE, 'cn', '4'), (ldap.MOD_REPLACE, 'description', '1'), (ldap.MOD_REPLACE, 'description', None), (ldap.MOD_ADD, 'sn', '2'), (ldap.MOD_REPLACE, 'sn', '3'), (ldap.MOD_ADD, 'sn', '4'), (ldap.MOD_DELETE, 'sn', '3'), (ldap.MOD_ADD, 'sn', '5'), (ldap.MOD_REPLACE, 'sn', ['6', '7', '8'])] expectval = '5' expectvalsn = ['6', '7', '8'] m1.modify_s(dn, mod) time.sleep(5) print "search for entry on m2 . . ." attrlist = ['cn', 'sn', 'nscpentrywsi'] ents = m2.search_s(dn, ldap.SCOPE_BASE, 'objectclass=*', attrlist) ent = ents[0] if ent.cn == expectval and ent.hasValue('sn', expectvalsn): print "value of m2 entry is correct" else: print "value of m2 entry is not correct:", ent.cn print "value of m2 entry is not correct:", ent.sn print "entrywsi:", str(ent) print "search for entry on m1 . . ." ents = m1.search_s(dn, ldap.SCOPE_BASE, 'objectclass=*', attrlist) ent = ents[0] if ent.cn == expectval and ent.hasValue('sn', expectvalsn): print "value of m1 entry is correct" else: print "value of m1 entry is not correct:", ent.cn print "value of m1 entry is not correct:", ent.sn print "entrywsi:", str(ent)
print "Delete description attr in all entries . . ." for ii in myiter: dn = "cn=%d, %s" % (ii, basedn) jj = ii + 1 svr = (m1, m2)[jj % 2] delit = [(ldap.MOD_DELETE, 'description', None)] svr.modify_s(dn, delit) print "Modified", dn print "Sleep for 20 seconds to let changes propagate . . ." time.sleep(20) print "Verify all entries are modified . . ." for ii in myiter: dn = "cn=%d, %s" % (ii, basedn) ent = m1.getEntry(dn, ldap.SCOPE_BASE) if ent.hasValue('description', 'added description'): raise "Entry %s in %s has description" % (dn, m1) ent = m2.getEntry(dn, ldap.SCOPE_BASE) if ent.hasValue('description', 'added description'): raise "Entry %s in %s has description" % (dn, m2) print "Delete all entries . . ." for ii in myiter: dn = "cn=%d, %s" % (ii, basedn) jj = ii + 1 svr = (m1, m2)[jj % 2] svr.delete_s(dn) print "Deleted", dn print "Sleep for 20 seconds to let changes propagate . . ." time.sleep(20)