Skip to content

Commit 52eda8a

Browse files
committed
Added tests for variant and struct types in the MetadataResultSetBuilderTest
1 parent 647a163 commit 52eda8a

1 file changed

Lines changed: 32 additions & 10 deletions

File tree

src/test/java/com/databricks/jdbc/dbclient/impl/common/MetadataResultSetBuilderTest.java

Lines changed: 32 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -476,17 +476,28 @@ void testComplexTypesReturnVarcharWhenSupportDisabled() throws SQLException {
476476
Arrays.asList(DATA_TYPE_COLUMN, COLUMN_TYPE_COLUMN, SQL_DATA_TYPE_COLUMN);
477477
List<List<Object>> rows =
478478
Arrays.asList(
479-
Arrays.asList(2003, "ARRAY<DATE>", 2003), Arrays.asList(2002, "MAP<STRING,INT>", 2002));
479+
Arrays.asList(2003, "ARRAY<DATE>", 2003),
480+
Arrays.asList(2002, "MAP<STRING,INT>", 2002),
481+
Arrays.asList(2002, "STRUCT<name:STRING,age:INT>", 2002),
482+
Arrays.asList(1111, "VARIANT", 1111));
480483

481484
List<List<Object>> updatedRows = metadataResultSetBuilder.getThriftRows(rows, columns);
482485

483486
List<Object> arrayRow = updatedRows.get(0);
484-
assertEquals(12, arrayRow.get(0)); // DATA_TYPE should be 12 (VARCHAR)
485-
assertEquals(12, arrayRow.get(2)); // SQL_DATA_TYPE should be 12 (VARCHAR)
487+
assertEquals(12, arrayRow.get(0));
488+
assertEquals(12, arrayRow.get(2));
486489

487490
List<Object> mapRow = updatedRows.get(1);
488-
assertEquals(12, mapRow.get(0)); // DATA_TYPE should be 12 (VARCHAR)
489-
assertEquals(12, mapRow.get(2)); // SQL_DATA_TYPE should be 12 (VARCHAR)
491+
assertEquals(12, mapRow.get(0));
492+
assertEquals(12, mapRow.get(2));
493+
494+
List<Object> structRow = updatedRows.get(2);
495+
assertEquals(12, structRow.get(0));
496+
assertEquals(12, structRow.get(2));
497+
498+
List<Object> variantRow = updatedRows.get(3);
499+
assertEquals(1111, variantRow.get(0));
500+
assertEquals(1111, variantRow.get(2));
490501
}
491502

492503
@Test
@@ -497,16 +508,27 @@ void testComplexTypesReturnActualCodesWhenSupportEnabled() throws SQLException {
497508
Arrays.asList(DATA_TYPE_COLUMN, COLUMN_TYPE_COLUMN, SQL_DATA_TYPE_COLUMN);
498509
List<List<Object>> rows =
499510
Arrays.asList(
500-
Arrays.asList(2003, "ARRAY<DATE>", 2003), Arrays.asList(2002, "MAP<STRING,INT>", 2002));
511+
Arrays.asList(2003, "ARRAY<DATE>", 2003),
512+
Arrays.asList(2002, "MAP<STRING,INT>", 2002),
513+
Arrays.asList(2002, "STRUCT<name:STRING,age:INT>", 2002),
514+
Arrays.asList(1111, "VARIANT", 1111));
501515

502516
List<List<Object>> updatedRows = metadataResultSetBuilder.getThriftRows(rows, columns);
503517

504518
List<Object> arrayRow = updatedRows.get(0);
505-
assertEquals(2003, arrayRow.get(0)); // DATA_TYPE should be 2003 (ARRAY)
506-
assertEquals(2003, arrayRow.get(2)); // SQL_DATA_TYPE should be 2003 (ARRAY)
519+
assertEquals(2003, arrayRow.get(0));
520+
assertEquals(2003, arrayRow.get(2));
507521

508522
List<Object> mapRow = updatedRows.get(1);
509-
assertEquals(2002, mapRow.get(0)); // DATA_TYPE should be 2002 (MAP)
510-
assertEquals(2002, mapRow.get(2)); // SQL_DATA_TYPE should be 2002 (MAP)
523+
assertEquals(2002, mapRow.get(0));
524+
assertEquals(2002, mapRow.get(2));
525+
526+
List<Object> structRow = updatedRows.get(2);
527+
assertEquals(2002, structRow.get(0));
528+
assertEquals(2002, structRow.get(2));
529+
530+
List<Object> variantRow = updatedRows.get(3);
531+
assertEquals(1111, variantRow.get(0));
532+
assertEquals(1111, variantRow.get(2));
511533
}
512534
}

0 commit comments

Comments
 (0)