andygrove commented on a change in pull request #8102: URL: https://github.com/apache/arrow/pull/8102#discussion_r489807582
########## File path: rust/datafusion/tests/sql.rs ########## @@ -734,7 +737,38 @@ fn query_concat() -> Result<()> { ctx.register_table("test", Box::new(table)); let sql = "SELECT concat(c1, '-hi-', cast(c2 as varchar)) FROM test"; let actual = execute(&mut ctx, sql); - let expected = vec!["\"-hi-0\"", "\"a-hi-1\"", "\"NULL\"", "\"aaa-hi-3\""]; + let expected = vec!["\"-hi-0\"", "\"a-hi-1\"", "NULL", "\"aaa-hi-3\""]; + assert_eq!(expected, actual); + Ok(()) +} + +#[test] +fn query_array() -> Result<()> { + let schema = Arc::new(Schema::new(vec![ + Field::new("c1", DataType::Utf8, false), + Field::new("c2", DataType::Int32, true), + ])); + + let data = RecordBatch::try_new( + schema.clone(), + vec![ + Arc::new(StringArray::from(vec!["", "a", "aa", "aaa"])), + Arc::new(Int32Array::from(vec![Some(0), Some(1), None, Some(3)])), + ], + )?; + + let table = MemTable::new(schema, vec![vec![data]])?; + + let mut ctx = ExecutionContext::new(); + ctx.register_table("test", Box::new(table)); + let sql = "SELECT array(c1, cast(c2 as varchar)) FROM test"; + let actual = execute(&mut ctx, sql); Review comment: nit: It would be good to have an assertion here looking at the data type of this array ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org