Skip to content

Commit a1a20be

Browse files
marvinlanhenkefindepi
authored andcommitted
chore: move aggregate_var to slt (apache#10750)
1 parent 3de44c6 commit a1a20be

File tree

2 files changed

+118
-109
lines changed

2 files changed

+118
-109
lines changed

datafusion/physical-expr/src/aggregate/variance.rs

Lines changed: 0 additions & 109 deletions
Original file line numberDiff line numberDiff line change
@@ -337,117 +337,8 @@ mod tests {
337337
use super::*;
338338
use crate::aggregate::utils::get_accum_scalar_values_as_arrays;
339339
use crate::expressions::col;
340-
use crate::expressions::tests::aggregate;
341-
use crate::generic_test_op;
342340
use arrow::{array::*, datatypes::*};
343341

344-
#[test]
345-
fn variance_f64_1() -> Result<()> {
346-
let a: ArrayRef = Arc::new(Float64Array::from(vec![1_f64, 2_f64]));
347-
generic_test_op!(
348-
a,
349-
DataType::Float64,
350-
VariancePop,
351-
ScalarValue::from(0.25_f64)
352-
)
353-
}
354-
355-
#[test]
356-
fn variance_f64_2() -> Result<()> {
357-
let a: ArrayRef =
358-
Arc::new(Float64Array::from(vec![1_f64, 2_f64, 3_f64, 4_f64, 5_f64]));
359-
generic_test_op!(a, DataType::Float64, VariancePop, ScalarValue::from(2_f64))
360-
}
361-
362-
#[test]
363-
fn variance_f64_3() -> Result<()> {
364-
let a: ArrayRef =
365-
Arc::new(Float64Array::from(vec![1_f64, 2_f64, 3_f64, 4_f64, 5_f64]));
366-
generic_test_op!(a, DataType::Float64, Variance, ScalarValue::from(2.5_f64))
367-
}
368-
369-
#[test]
370-
fn variance_f64_4() -> Result<()> {
371-
let a: ArrayRef = Arc::new(Float64Array::from(vec![1.1_f64, 2_f64, 3_f64]));
372-
generic_test_op!(
373-
a,
374-
DataType::Float64,
375-
Variance,
376-
ScalarValue::from(0.9033333333333333_f64)
377-
)
378-
}
379-
380-
#[test]
381-
fn variance_i32() -> Result<()> {
382-
let a: ArrayRef = Arc::new(Int32Array::from(vec![1, 2, 3, 4, 5]));
383-
generic_test_op!(a, DataType::Int32, VariancePop, ScalarValue::from(2_f64))
384-
}
385-
386-
#[test]
387-
fn variance_u32() -> Result<()> {
388-
let a: ArrayRef =
389-
Arc::new(UInt32Array::from(vec![1_u32, 2_u32, 3_u32, 4_u32, 5_u32]));
390-
generic_test_op!(a, DataType::UInt32, VariancePop, ScalarValue::from(2.0f64))
391-
}
392-
393-
#[test]
394-
fn variance_f32() -> Result<()> {
395-
let a: ArrayRef =
396-
Arc::new(Float32Array::from(vec![1_f32, 2_f32, 3_f32, 4_f32, 5_f32]));
397-
generic_test_op!(a, DataType::Float32, VariancePop, ScalarValue::from(2_f64))
398-
}
399-
400-
#[test]
401-
fn test_variance_1_input() -> Result<()> {
402-
let a: ArrayRef = Arc::new(Float64Array::from(vec![1_f64]));
403-
let schema = Schema::new(vec![Field::new("a", DataType::Float64, false)]);
404-
let batch = RecordBatch::try_new(Arc::new(schema.clone()), vec![a])?;
405-
406-
let agg = Arc::new(Variance::new(
407-
col("a", &schema)?,
408-
"bla".to_string(),
409-
DataType::Float64,
410-
));
411-
let actual = aggregate(&batch, agg).unwrap();
412-
assert_eq!(actual, ScalarValue::Float64(None));
413-
414-
Ok(())
415-
}
416-
417-
#[test]
418-
fn variance_i32_with_nulls() -> Result<()> {
419-
let a: ArrayRef = Arc::new(Int32Array::from(vec![
420-
Some(1),
421-
None,
422-
Some(3),
423-
Some(4),
424-
Some(5),
425-
]));
426-
generic_test_op!(
427-
a,
428-
DataType::Int32,
429-
VariancePop,
430-
ScalarValue::from(2.1875_f64)
431-
)
432-
}
433-
434-
#[test]
435-
fn variance_i32_all_nulls() -> Result<()> {
436-
let a: ArrayRef = Arc::new(Int32Array::from(vec![None, None]));
437-
let schema = Schema::new(vec![Field::new("a", DataType::Int32, true)]);
438-
let batch = RecordBatch::try_new(Arc::new(schema.clone()), vec![a])?;
439-
440-
let agg = Arc::new(Variance::new(
441-
col("a", &schema)?,
442-
"bla".to_string(),
443-
DataType::Float64,
444-
));
445-
let actual = aggregate(&batch, agg).unwrap();
446-
assert_eq!(actual, ScalarValue::Float64(None));
447-
448-
Ok(())
449-
}
450-
451342
#[test]
452343
fn variance_f64_merge_1() -> Result<()> {
453344
let a = Arc::new(Float64Array::from(vec![1_f64, 2_f64, 3_f64]));

datafusion/sqllogictest/test_files/aggregate.slt

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2458,7 +2458,125 @@ NULL Float64
24582458
statement ok
24592459
drop table t;
24602460

2461+
# aggregate variance f64_1
2462+
statement ok
2463+
create table t (c1 double) as values (1), (2);
2464+
2465+
query RT
2466+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2467+
----
2468+
0.25 Float64
2469+
2470+
statement ok
2471+
drop table t;
2472+
2473+
# aggregate variance f64_2
2474+
statement ok
2475+
create table t (c1 double) as values (1), (2), (3), (4), (5);
2476+
2477+
query RT
2478+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2479+
----
2480+
2 Float64
2481+
2482+
statement ok
2483+
drop table t;
2484+
2485+
# aggregate variance f64_3
2486+
statement ok
2487+
create table t (c1 double) as values (1), (2), (3), (4), (5);
2488+
2489+
query RT
2490+
select var(c1), arrow_typeof(var(c1)) from t;
2491+
----
2492+
2.5 Float64
24612493

2494+
statement ok
2495+
drop table t;
2496+
2497+
# aggregate variance f64_4
2498+
statement ok
2499+
create table t (c1 double) as values (1.1), (2), (3);
2500+
2501+
query RT
2502+
select var(c1), arrow_typeof(var(c1)) from t;
2503+
----
2504+
0.903333333333 Float64
2505+
2506+
statement ok
2507+
drop table t;
2508+
2509+
# aggregate variance i32
2510+
statement ok
2511+
create table t (c1 int) as values (1), (2), (3), (4), (5);
2512+
2513+
query RT
2514+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2515+
----
2516+
2 Float64
2517+
2518+
statement ok
2519+
drop table t;
2520+
2521+
# aggregate variance u32
2522+
statement ok
2523+
create table t (c1 int unsigned) as values (1), (2), (3), (4), (5);
2524+
2525+
query RT
2526+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2527+
----
2528+
2 Float64
2529+
2530+
statement ok
2531+
drop table t;
2532+
2533+
# aggregate variance f32
2534+
statement ok
2535+
create table t (c1 float) as values (1), (2), (3), (4), (5);
2536+
2537+
query RT
2538+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2539+
----
2540+
2 Float64
2541+
2542+
statement ok
2543+
drop table t;
2544+
2545+
# aggregate single input
2546+
statement ok
2547+
create table t (c1 double) as values (1);
2548+
2549+
query RT
2550+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2551+
----
2552+
0 Float64
2553+
2554+
statement ok
2555+
drop table t;
2556+
2557+
# aggregate i32 with nulls
2558+
statement ok
2559+
create table t (c1 int) as values (1), (null), (3), (4), (5);
2560+
2561+
query RT
2562+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2563+
----
2564+
2.1875 Float64
2565+
2566+
statement ok
2567+
drop table t;
2568+
2569+
# aggregate i32 all nulls
2570+
statement ok
2571+
create table t (c1 int) as values (null), (null);
2572+
2573+
query RT
2574+
select var_pop(c1), arrow_typeof(var_pop(c1)) from t;
2575+
----
2576+
NULL Float64
2577+
2578+
statement ok
2579+
drop table t;
24622580

24632581
# simple_mean
24642582
query R

0 commit comments

Comments
 (0)