From 54501af732302b847b2b1babcbc45d37a699688c Mon Sep 17 00:00:00 2001 From: Andy Grove Date: Fri, 10 Jul 2026 14:11:39 -0600 Subject: [PATCH] test: cover invalid unhex inputs in SQL file tests Add coverage for unhex('-123') and unhex('\0') to the unhex SQL file tests. Both a non-hex string and the null character exercise unhex's invalid-input handling, which returns NULL in Spark. The values are added to the column-path INSERT data and to a dedicated literal query so both evaluation paths are checked. --- .../test/resources/sql-tests/expressions/string/unhex.sql | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/spark/src/test/resources/sql-tests/expressions/string/unhex.sql b/spark/src/test/resources/sql-tests/expressions/string/unhex.sql index 0f31a880b3..757ada7969 100644 --- a/spark/src/test/resources/sql-tests/expressions/string/unhex.sql +++ b/spark/src/test/resources/sql-tests/expressions/string/unhex.sql @@ -19,7 +19,7 @@ statement CREATE TABLE test_unhex(s string) USING parquet statement -INSERT INTO test_unhex VALUES ('537061726B2053514C'), ('41'), ('0A1B'), (''), (NULL), ('GG'), ('hello'), ('A1B') +INSERT INTO test_unhex VALUES ('537061726B2053514C'), ('41'), ('0A1B'), (''), (NULL), ('GG'), ('hello'), ('A1B'), ('-123'), ('\0') query SELECT hex(unhex(s)) FROM test_unhex @@ -30,3 +30,7 @@ SELECT unhex(s) IS NULL FROM test_unhex -- literal arguments query SELECT unhex('41'), unhex('GG'), unhex(''), unhex(NULL) + +-- invalid inputs: non-hex characters and the null character both return NULL +query +SELECT unhex('-123'), unhex('\0')