def METHOD_NAME(dataframe):
    """Test basic data table filter functionality."""
    dt_filter = DataTableFilter(data=dataframe)
    for col in dataframe.columns:
        check.is_in(col, dt_filter._col_select.options)
    check.is_instance(dt_filter.filtered_dataframe, pd.DataFrame)
    check.equal(len(dataframe), len(dt_filter.filtered_dataframe))
    dt_filter._col_select.value = "Account"
    check.equal("Account", dt_filter.current_col)
    for oper in dt_filter._OPERATORS["string"]:
        check.is_in(oper, dt_filter._oper_sel.options)
    dt_filter._oper_sel.value = "contains"
    dt_filter._filter_value.value = "MSTICAlertsWin1"
    dt_filter._add_filter(btn=None)
    check.equal(1, len(dt_filter._curr_filters.options))
    check.equal(3, len(dt_filter.filtered_dataframe))
    dt_filter._col_select.value = "EventID"
    for oper in dt_filter._OPERATORS["other"]:
        check.is_in(oper, dt_filter._oper_sel.options)
    dt_filter._oper_sel.value = "=="
    dt_filter._filter_value.value = "4624"
    dt_filter._add_filter(btn=None)
    check.equal(2, len(dt_filter._curr_filters.options))
    check.equal(3, len(dt_filter.filtered_dataframe))
    check.equal(len(dataframe), len(dt_filter.bool_filters))
    dt_filter._curr_filters.value = dt_filter._curr_filters.options[0]
    dt_filter._col_select.value = "Account"
    dt_filter._oper_sel.value = "contains"
    dt_filter._filter_value.value = "SYSTEM"
    dt_filter._update_filter(btn=None)
    check.equal(2, len(dt_filter._curr_filters.options))
    check.equal(len(dataframe) - 3, len(dt_filter.filtered_dataframe))
    dt_filter._curr_filters.value = dt_filter._curr_filters.options[1]
    dt_filter._del_filter(btn=None)
    check.equal(1, len(dt_filter._curr_filters.options))
    check.equal(len(dataframe), len(dt_filter.filtered_dataframe))
    dt_filter._clear_filters(btn=None)
    check.equal(0, len(dt_filter._curr_filters.options))
    check.equal(len(dataframe), len(dt_filter.filtered_dataframe))