def dynamic_tests_helper(self, parameter_name, query_definition, num_of_rows_when_no_filters_in_query, column_name_in_table, values_list, test_type):
        """
        Performing filtering with one and two values (if possible) for dynamic parameters.

        Parameters
        ----------
        parameter_name : Name of a parser's parameter
        query_definition : A definition of the parser's query
        num_of_rows_when_no_filters_in_query : The number of rows in a response of parser's query without performing any filtering. With filtering, we expect to have less rows.
        column_name_in_table : The name of the column in the query response on which the parameter performs filtering
        values_list : List of at most two values that will be used to perform filtering.
        test_type : Name of the specific tests performed. It can be default testing or specific testing for  has_any/has_any_prefix parameters
        """
        self.fail_if_values_list_is_empty(values_list, parameter_name, test_type)

        # Performing filtering with one value
        filtering_with_one_value_response, one_value_string = self.get_response_for_query_with_one_parameter(parameter_name, query_definition, column_name_in_table, values_list)
        num_of_rows_with_one_parameter_in_query = len(filtering_with_one_value_response.tables[0].rows)
        self.dynamic_tests_assertions(parameter_name, num_of_rows_with_one_parameter_in_query, one_value_string, num_of_rows_when_no_filters_in_query)

        # Performing filtering with two values if possible
        if len(values_list) == 1 or num_of_rows_when_no_filters_in_query <= MAX_FILTERING_PARAMETERS:
            # Skip self.fail if values_list contains both "Logon" and "Logoff" and parameter_name is "eventtype_in"
            if not (set(values_list) == {"Logon", "Logoff"} and parameter_name == "eventtype_in"):
                self.fail(f"Parameter: {parameter_name} - Not enough data to perform two values {test_type} tests")
        filtering_response, values_string = self.get_response_for_query_with_parameters(parameter_name, query_definition, column_name_in_table, values_list)
        num_of_rows_with_parameters_in_query = len(filtering_response.tables[0].rows)
        self.dynamic_tests_assertions(parameter_name, num_of_rows_with_parameters_in_query, values_string, num_of_rows_when_no_filters_in_query)

        # Performing a query with a non-existing value, expecting to return no results
        self.dynamic_tests_check_fictive_value(parameter_name, query_definition, column_name_in_table)

        Performing filtering with one and two values (if possible) for dynamic parameters.

        Parameters
        ----------
        parameter_name : Name of a parser's parameter
        query_definition : A definition of the parser's query
        num_of_rows_when_no_filters_in_query : The number of rows in a response of parser's query without performing any filtering. With filtering, we expect to have less rows.
        column_name_in_table : The name of the column in the query response on which the parameter performs filtering
        values_list : List of at most two values that will be used to perform filtering.
        test_type : Name of the specific tests performed. It can be default testing or specific testing for  has_any/has_any_prefix parameters
        
.script/tests/asimParsersTest/ASimFilteringTest.py