def attribute_match_all(
    attribute, length=None, data=None, value=None, endswith=None
):
    """
    Check if an attribute matches all of the following specified conditions:

    - Minimum length.
    - Contains an item.
    - Is exactly a value.

    Note that only those conditions explicitly passed will be checked.

    Parameters
    ----------
    attribute : anything
        The attribute to match against.
    length : int, default is None
        If specified, the attribute must reach this length (or higher).
    data : anything, default is None
        If specified, the attribute must contain this value.
    value : anything, default is None
        If specified, the attribute must be this value.
    endswith : sequence, default is None
        If specified, the attribute must end with this sequence.

    Returns
    -------
    bool
        Whether the attribute matches any condition.
    """
    assert (
        length is not None
        or data is not None
        or value is not None
        or endswith is not None
    ), 'No condition passed! Will return True always...'
    if length is not None and len(attribute) < length:
        return False
    if data is not None and data not in attribute:
        return False
    if value is not None and attribute != value:
        return False
    if endswith is not None and attribute[-len(endswith) :] != endswith:
        return False
    return True