You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@datafusion.apache.org by al...@apache.org on 2025/05/02 19:47:10 UTC
(datafusion) branch main updated: Minor: cleanup datafusion-spark scalar functions (#15921)
This is an automated email from the ASF dual-hosted git repository.
alamb pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/datafusion.git
The following commit(s) were added to refs/heads/main by this push:
new 47518aac49 Minor: cleanup datafusion-spark scalar functions (#15921)
47518aac49 is described below
commit 47518aac495f5f4b9bc728b015c594682fb8a16b
Author: Andrew Lamb <an...@nerdnetworks.org>
AuthorDate: Fri May 2 15:47:06 2025 -0400
Minor: cleanup datafusion-spark scalar functions (#15921)
---
datafusion/spark/src/function/utils.rs | 18 +++++++++++++++---
1 file changed, 15 insertions(+), 3 deletions(-)
diff --git a/datafusion/spark/src/function/utils.rs b/datafusion/spark/src/function/utils.rs
index 57505170c2..67ec76ba52 100644
--- a/datafusion/spark/src/function/utils.rs
+++ b/datafusion/spark/src/function/utils.rs
@@ -28,7 +28,7 @@ pub mod test {
let expected: datafusion_common::Result<Option<$EXPECTED_TYPE>> = $EXPECTED;
let func = $FUNC;
- let arg_fields_owned = $ARGS
+ let arg_fields_owned: Vec<arrow::datatypes::Field> = $ARGS
.iter()
.enumerate()
.map(|(idx, arg)| {
@@ -42,6 +42,8 @@ pub mod test {
})
.collect::<Vec<_>>();
+ let arg_fields: Vec<&arrow::datatypes::Field> = arg_fields_owned.iter().collect();
+
let cardinality = $ARGS
.iter()
.fold(Option::<usize>::None, |acc, arg| match arg {
@@ -67,7 +69,12 @@ pub mod test {
let return_field = return_field.unwrap();
assert_eq!(return_field.data_type(), &$EXPECTED_DATA_TYPE);
- let result = func.invoke_with_args(datafusion_expr::ScalarFunctionArgs{args: $ARGS, number_rows: cardinality, return_field: &return_field, arg_fields: arg_fields_owned.iter().collect()});
+ let result = func.invoke_with_args(datafusion_expr::ScalarFunctionArgs{
+ args: $ARGS,
+ number_rows: cardinality,
+ return_field: &return_field,
+ arg_fields: arg_fields.clone(),
+ });
assert_eq!(result.is_ok(), true, "function returned an error: {}", result.unwrap_err());
let result = result.unwrap().to_array(cardinality).expect("Failed to convert to array");
@@ -91,7 +98,12 @@ pub mod test {
let return_field = return_field.unwrap();
// invoke is expected error - cannot use .expect_err() due to Debug not being implemented
- match func.invoke_with_args(datafusion_expr::ScalarFunctionArgs{args: $ARGS, number_rows: cardinality, return_field: &return_field, arg_fields: arg_fields_owned.iter().collect()}) {
+ match func.invoke_with_args(datafusion_expr::ScalarFunctionArgs{
+ args: $ARGS,
+ number_rows: cardinality,
+ return_field: &return_field,
+ arg_fields,
+ }) {
Ok(_) => assert!(false, "expected error"),
Err(error) => {
assert!(expected_error.strip_backtrace().starts_with(&error.strip_backtrace()));
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@datafusion.apache.org
For additional commands, e-mail: commits-help@datafusion.apache.org