def METHOD_NAME(self, func, expected_result, exitcode, node=None):
    """Check mathematical functions with Decimal256 using table tests.
    """
    min = Decimal256_min_max[0]
    max = Decimal256_min_max[1]
    if node is None:
        node = self.context.node
    table_name = f'table_{getuid()}'
    with Given(f"I have a table"):
        table(name = table_name, data_type = 'Decimal256(0)')
    if func in ['intExp2(', 'intExp10(', 'pow(1,', 'power(1,', 'atan2(1,', 'hypot(1,']:
        for value in [1, max, min]:
            with When(f"I insert the output of {func} with Decimal256 using {value} into a table"):
                node.query(f"INSERT INTO {table_name} SELECT {func} toDecimal256(\'{value}\',0))",
                    exitcode=43, message = 'Exception: Illegal type ')
    else:
        for value in [1, max, min]:
            with When(f"I insert the output of {func} with Decimal256 using {value} into a table"):
                node.query(f"INSERT INTO {table_name} SELECT round(toDecimal256OrZero( toString({func} toDecimal256(\'{value}\',0))),0), 7)")
        with Then(f"I check the outputs of {func} with Decimal256"):
            execute_query(f"""
                SELECT * FROM {table_name} ORDER BY a ASC
                """)