From 1c51c87d61fda83f6c7288dd83770ee221d11b2c Mon Sep 17 00:00:00 2001 From: Raz Luvaton <16746759+rluvaton@users.noreply.github.com> Date: Sat, 16 Nov 2024 21:11:18 +0200 Subject: [PATCH] add greatest slt tests --- .../sqllogictest/test_files/functions.slt | 49 +++++++++++++++++-- 1 file changed, 46 insertions(+), 3 deletions(-) diff --git a/datafusion/sqllogictest/test_files/functions.slt b/datafusion/sqllogictest/test_files/functions.slt index 013ccf58ba6c..e636737de146 100644 --- a/datafusion/sqllogictest/test_files/functions.slt +++ b/datafusion/sqllogictest/test_files/functions.slt @@ -1344,7 +1344,6 @@ select contains('', ''); true # test for greatest - statement ok CREATE TABLE t1 (a int, b int, c int) as VALUES (4, NULL, NULL), @@ -1364,11 +1363,9 @@ SELECT greatest(a, b, c) FROM t1 NULL 3 - statement ok drop table t1 - query I SELECT greatest(1) ---- @@ -1497,3 +1494,49 @@ SELECT greatest(NULL, NULL, NULL, a, -1) FROM foo statement ok drop table foo + +query R +select greatest(arrow_cast('NAN','Float64'), arrow_cast('NAN','Float64')) +---- +NaN + +query R +select greatest(arrow_cast('NAN','Float64'), arrow_cast('NAN','Float32')) +---- +NaN + +query R +select greatest(arrow_cast('NAN','Float64'), '+Inf'::Double) +---- +NaN + +query R +select greatest(arrow_cast('NAN','Float64'), NULL) +---- +NaN + +query R +select greatest(NULL, '+Inf'::Double) +---- +Infinity + +query R +select greatest(NULL, '-Inf'::Double) +---- +-Infinity + +statement ok +CREATE TABLE t1 (a double, b double, c double) as VALUES +(1, arrow_cast('NAN', 'Float64'), '+Inf'::Double), +(NULL, arrow_cast('NAN','Float64'), '+Inf'::Double), +(1, '+Inf'::Double, NULL); + +query R +SELECT greatest(a, b, c) FROM t1 +---- +NaN +NaN +Infinity + +statement ok +drop table t1