def METHOD_NAME(name, parent=None, vlan=None):
    """
    Ensures that the named bridge exists, eventually creates it.
    Args:
        name : string
            name of the bridge
        parent : string
            name of the parent bridge (if the bridge shall be created as a fake
            bridge). If specified, vlan must also be specified.
        .. versionadded:: 3006
        vlan: int
            VLAN ID of the bridge (if the bridge shall be created as a fake
            bridge). If specified, parent must also be specified.
        .. versionadded:: 3006
    """
    ret = {"name": name, "changes": {}, "result": False, "comment": ""}
    # Comment and change messages
    comment_bridge_created = "Bridge {} created.".format(name)
    comment_bridge_notcreated = "Unable to create bridge: {}.".format(name)
    comment_bridge_exists = "Bridge {} already exists.".format(name)
    comment_bridge_mismatch = (
        "Bridge {} already exists, but has a different" " parent or VLAN ID."
    ).format(name)
    changes_bridge_created = {
        name: {
            "old": "Bridge {} does not exist.".format(name),
            "new": "Bridge {} created".format(name),
        }
    }
    bridge_exists = __salt__["openvswitch.bridge_exists"](name)
    if bridge_exists:
        current_parent = __salt__["openvswitch.bridge_to_parent"](name)
        if current_parent == name:
            current_parent = None
        current_vlan = __salt__["openvswitch.bridge_to_vlan"](name)
        if current_vlan == 0:
            current_vlan = None
    # Dry run, test=true mode
    if __opts__["test"]:
        if bridge_exists:
            if current_parent == parent and current_vlan == vlan:
                ret["result"] = True
                ret["comment"] = comment_bridge_exists
            else:
                ret["result"] = False
                ret["comment"] = comment_bridge_mismatch
        else:
            ret["result"] = None
            ret["comment"] = comment_bridge_created
        return ret
    if bridge_exists:
        if current_parent == parent and current_vlan == vlan:
            ret["result"] = True
            ret["comment"] = comment_bridge_exists
        else:
            ret["result"] = False
            ret["comment"] = comment_bridge_mismatch
    else:
        bridge_create = __salt__["openvswitch.bridge_create"](
            name, parent=parent, vlan=vlan
        )
        if bridge_create:
            ret["result"] = True
            ret["comment"] = comment_bridge_created
            ret["changes"] = changes_bridge_created
        else:
            ret["result"] = False
            ret["comment"] = comment_bridge_notcreated
    return ret