1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.type;
17
18 import static org.junit.jupiter.api.Assertions.assertEquals;
19
20 import java.sql.Types;
21
22 import org.junit.jupiter.api.Test;
23
24 class JdbcTypeTest {
25 private static final String[] requiredStandardTypeNames = {
26 "ARRAY", "BIGINT", "BINARY", "BIT", "BLOB", "BOOLEAN", "CHAR", "CLOB",
27 "DATALINK", "DATE", "DECIMAL", "DISTINCT", "DOUBLE", "FLOAT", "INTEGER",
28 "JAVA_OBJECT", "LONGNVARCHAR", "LONGVARBINARY", "LONGVARCHAR", "NCHAR",
29 "NCLOB", "NULL", "NUMERIC","NVARCHAR", "OTHER", "REAL", "REF", "ROWID",
30 "SMALLINT", "SQLXML", "STRUCT", "TIME", "TIMESTAMP", "TINYINT",
31 "VARBINARY", "VARCHAR"
32 };
33
34 @Test
35 void shouldHaveRequiredStandardConstants() throws Exception {
36 for (String typeName : requiredStandardTypeNames) {
37 int typeCode = Types.class.getField(typeName).getInt(null);
38 JdbcType jdbcType = JdbcType.valueOf(typeName);
39 assertEquals(typeCode, jdbcType.TYPE_CODE);
40 }
41 }
42
43 @Test
44 void shouldHaveDateTimeOffsetConstant() {
45 JdbcType jdbcType = JdbcType.valueOf("DATETIMEOFFSET");
46 assertEquals(-155, jdbcType.TYPE_CODE);
47 }
48 }