in crates/datafusion/src/util/expr.rs [126:155]
fn test_convert_not_expr() {
let schema = Arc::new(Schema::new(vec![Field::new("col", DataType::Int32, false)]));
let inner_expr = Expr::BinaryExpr(BinaryExpr::new(
Box::new(col("col")),
Operator::Eq,
Box::new(lit(42i32)),
));
let expr = Expr::Not(Box::new(inner_expr));
let filters = vec![expr];
let result = exprs_to_filters(&filters);
assert_eq!(result.len(), 1);
let expected_filter = HudiFilter {
field_name: schema.field(0).name().to_string(),
operator: ExprOperator::Ne,
field_value: "42".to_string(),
};
assert_eq!(
result[0],
(
expected_filter.field_name,
expected_filter.operator.to_string(),
expected_filter.field_value
)
);
}