in cicd/unit_test_utils.js [21:39]
function generate_udaf_test(udaf_name, test_case) {
const test_name = `${udaf_name}_${uuidv4()}`;
create_dataform_udaf_test_view(test_name, udaf_name, test_case);
let expected_output_select_statements = [];
let test_input_select_statements = [];
let udf_positional_inputs = [];
test_case.input_columns.forEach((input, index) => {
if (!input.includes(' NOT AGGREGATE')) {
udf_positional_inputs.push(`${input} AS test_input_${index}`);
}
});
test_input_select_statements.push(`\n SELECT ${udf_positional_inputs.join(', ')} FROM (${test_case.input_rows})`);
expected_output_select_statements.push(`SELECT ${test_case.expected_output} AS udf_output`);
run_dataform_test(
test_name,
test_input_select_statements,
expected_output_select_statements
);
}