def has_non_empty_cells(reader, row):
    """ Checks if at least one of the values in array contains
        non-empty data.

        Args:
            reader (CSVReader or XLSReader): object that implements
                interface for reading input data.
            row (list of values): list of values stored in a row.

        Returns:
            bool: true if at least one of the values in array contains
                non-empty data, false otherwise.
    """
    for cell in row:
        if reader.cell_is_not_empty(cell) and reader.cell_is_not_blank(cell
            ) or reader.is_valid_text(cell):
            return True
    return False
