def find_all_disconnected_edges_and_fix(edges, tolerance, method):
    """ Find all disconnected edges of network and fix it

    :param edges: Edge class instance
    :param tolerance: tolerance for considering "disconnected" an edge
    :param method: fix method
    :return:
    """
    while 'There is still disconnected edges':
        new_edges = edges.find_disconnected_islands_and_fix(tolerance=
            tolerance, method=method)
        if len(new_edges) < len(edges):
            edges = new_edges
        else:
            break
    return new_edges
