diff --git a/datafusion/core/tests/expr_api/mod.rs b/datafusion/core/tests/expr_api/mod.rs index a69f7bd48437..1db5aa9f235a 100644 --- a/datafusion/core/tests/expr_api/mod.rs +++ b/datafusion/core/tests/expr_api/mod.rs @@ -28,6 +28,23 @@ use std::sync::{Arc, OnceLock}; mod simplification; +#[test] +fn test_octet_length() { + #[rustfmt::skip] + evaluate_expr_test( + octet_length(col("list")), + vec![ + "+------+", + "| expr |", + "+------+", + "| 5 |", + "| 18 |", + "| 6 |", + "+------+", + ], + ); +} + #[test] fn test_eq() { // id = '2' diff --git a/datafusion/functions/src/string/mod.rs b/datafusion/functions/src/string/mod.rs index 52411142cb8d..e931c4998115 100644 --- a/datafusion/functions/src/string/mod.rs +++ b/datafusion/functions/src/string/mod.rs @@ -128,8 +128,8 @@ pub mod expr_fn { } #[doc = "returns the number of bytes of a string"] - pub fn octet_length(args: Vec) -> Expr { - super::octet_length().call(args) + pub fn octet_length(args: Expr) -> Expr { + super::octet_length().call(vec![args]) } #[doc = "replace the substring of string that starts at the start'th character and extends for count characters with new substring"]