@@ -61,7 +61,7 @@ public void testSysColumns() {
6161 public void testSysColumnsInOdbcMode () {
6262 List <List <?>> rows = new ArrayList <>();
6363 SysColumns .fillInRows ("test" , "index" , TypesTests .loadMapping ("mapping-multi-field-variation.json" , true ), null , rows , null , true );
64- assertEquals (16 , rows .size ());
64+ assertEquals (14 , rows .size ());
6565 assertEquals (24 , rows .get (0 ).size ());
6666
6767 List <?> row = rows .get (0 );
@@ -90,6 +90,16 @@ public void testSysColumnsInOdbcMode() {
9090 assertEquals (Short .class , sqlDataType (row ).getClass ());
9191 assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
9292
93+ row = rows .get (3 );
94+ assertEquals ("keyword" , name (row ));
95+ assertEquals ((short ) Types .VARCHAR , sqlType (row ));
96+ assertEquals (null , radix (row ));
97+ assertEquals (Integer .MAX_VALUE , bufferLength (row ));
98+ assertNull (decimalPrecision (row ));
99+ assertEquals (Short .class , nullable (row ).getClass ());
100+ assertEquals (Short .class , sqlDataType (row ).getClass ());
101+ assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
102+
93103 row = rows .get (4 );
94104 assertEquals ("date" , name (row ));
95105 assertEquals ((short ) Types .TIMESTAMP , sqlType (row ));
@@ -101,17 +111,58 @@ public void testSysColumnsInOdbcMode() {
101111 assertEquals (Short .class , sqlDataType (row ).getClass ());
102112 assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
103113
114+ row = rows .get (5 );
115+ assertEquals ("unsupported" , name (row ));
116+ assertEquals ((short ) Types .OTHER , sqlType (row ));
117+ assertEquals (null , radix (row ));
118+ assertEquals (0 , precision (row ));
119+ assertEquals (0 , bufferLength (row ));
120+ assertNull (decimalPrecision (row ));
121+ assertEquals (Short .class , nullable (row ).getClass ());
122+ assertEquals (Short .class , sqlDataType (row ).getClass ());
123+ assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
124+
125+ row = rows .get (6 );
126+ assertEquals ("some.dotted.field" , name (row ));
127+ assertEquals ((short ) Types .VARCHAR , sqlType (row ));
128+ assertEquals (null , radix (row ));
129+ assertEquals (Integer .MAX_VALUE , bufferLength (row ));
130+ assertNull (decimalPrecision (row ));
131+ assertEquals (Short .class , nullable (row ).getClass ());
132+ assertEquals (Short .class , sqlDataType (row ).getClass ());
133+ assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
134+
104135 row = rows .get (7 );
105- assertEquals ("some.dotted " , name (row ));
106- assertEquals ((short ) Types .STRUCT , sqlType (row ));
136+ assertEquals ("some.string " , name (row ));
137+ assertEquals ((short ) Types .VARCHAR , sqlType (row ));
107138 assertEquals (null , radix (row ));
108- assertEquals (- 1 , bufferLength (row ));
139+ assertEquals (Integer . MAX_VALUE , bufferLength (row ));
109140 assertNull (decimalPrecision (row ));
110141 assertEquals (Short .class , nullable (row ).getClass ());
111142 assertEquals (Short .class , sqlDataType (row ).getClass ());
112143 assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
113144
114- row = rows .get (15 );
145+ row = rows .get (8 );
146+ assertEquals ("some.string.normalized" , name (row ));
147+ assertEquals ((short ) Types .VARCHAR , sqlType (row ));
148+ assertEquals (null , radix (row ));
149+ assertEquals (Integer .MAX_VALUE , bufferLength (row ));
150+ assertNull (decimalPrecision (row ));
151+ assertEquals (Short .class , nullable (row ).getClass ());
152+ assertEquals (Short .class , sqlDataType (row ).getClass ());
153+ assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
154+
155+ row = rows .get (9 );
156+ assertEquals ("some.string.typical" , name (row ));
157+ assertEquals ((short ) Types .VARCHAR , sqlType (row ));
158+ assertEquals (null , radix (row ));
159+ assertEquals (Integer .MAX_VALUE , bufferLength (row ));
160+ assertNull (decimalPrecision (row ));
161+ assertEquals (Short .class , nullable (row ).getClass ());
162+ assertEquals (Short .class , sqlDataType (row ).getClass ());
163+ assertEquals (Short .class , sqlDataTypeSub (row ).getClass ());
164+
165+ row = rows .get (13 );
115166 assertEquals ("some.ambiguous.normalized" , name (row ));
116167 assertEquals ((short ) Types .VARCHAR , sqlType (row ));
117168 assertEquals (null , radix (row ));
0 commit comments