def METHOD_NAME(self, func, expected_result, supported, node=None):
    """Check rounding functions with Decimal256 using table tests.
    """
    min = Decimal256_min_max[0]
    max = Decimal256_min_max[1]
    table_name = f"table_{getuid()}"
    if node is None:
        node = self.context.node
    with Given("I have a table"):
        table(name = table_name, data_type = 'Decimal256(0)')
    if func == 'roundDown':
        for value in [1, max, min]:
            with When(f"I check roundDown with Decimal256 and {value}"):
                node.query(f"INSERT INTO {table_name} SELECT roundDown(toDecimal256(\'{value}\',0), [toDecimal256(0,0),toDecimal256(2,0)])",
                    exitcode=44, message=f'Exception: Illegal column Decimal256 of first argument of function roundDown')
    elif func not in ['roundDuration', 'roundAge', 'roundToExp2']:
        for value in [1, max, min]:
            with When(f"I insert the output of {func} with Decimal256 and {value} into the table"):
                node.query(f"INSERT INTO {table_name} SELECT {func}(toDecimal256(\'{value}\',0))")
        with Then(f"I select the output of {func} with Decimal256 from the table"):
            execute_query(f"""
                SELECT * FROM {table_name} ORDER BY a ASC
                """)
    else:
        for value in [1, max, min]:
            with When(f"I insert the output of {func} with Decimal256 and {value} into the table"):
                node.query(f"INSERT INTO {table_name} SELECT {func}(toDecimal256(\'{value}\',0))",
                    exitcode=43, message=f'Exception: Illegal type Decimal(76, 0)')