def test_this(self): ldap_server = ldap.initialize("ldap://localhost:3897") ldap_server.simple_bind_s("uid=aa729,ou=people,dc=example,dc=org", "smada") sio = StringIO() dump_tree_sorted(ldap_server, "dc=example,dc=org", sio) with open(os.path.join(DIRNAME, "tfiles", "sorted_testing.ldif")) as exp_f: eq_(exp_f.read().strip(), sio.getvalue().strip())
def _sync_db_to_ldap(organization_id, db_server, ldap_server, dry_run): base_domain = organization_dn(organization_id, db_server) if not base_domain: raise Exception("Couldn't get a base dn for org %s, refusing to continue" % organization_id) new_ldif = StringIO() mysql2ldif(organization_id, db_server, new_ldif) new_ldif.seek(0) cur_ldif = StringIO() dump_tree_sorted(ldap_server, base_domain, cur_ldif) cur_ldif.seek(0) if not dry_run: ldiff_and_apply(cur_ldif, new_ldif, ldap_server) else: ldiff_to_ldif(cur_ldif, new_ldif, dry_run)