|
@@ -21,44 +21,23 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.dialects.*;
|
|
|
import org.junit.jupiter.api.Assertions;
|
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
|
|
-import java.util.Map;
|
|
|
-import java.util.concurrent.ConcurrentHashMap;
|
|
|
|
|
|
/**
|
|
|
* @author nieqiuqiu
|
|
|
*/
|
|
|
class DbTypeTest {
|
|
|
|
|
|
- private static final Map<DbType, Class<? extends IDialect>> DIALECT_MAP = new ConcurrentHashMap<>();
|
|
|
-
|
|
|
- static {
|
|
|
- DIALECT_MAP.put(DbType.DB2, DB2Dialect.class);
|
|
|
- DIALECT_MAP.put(DbType.DM, DmDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.H2, H2Dialect.class);
|
|
|
- DIALECT_MAP.put(DbType.MYSQL, MySqlDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.MARIADB, MariaDBDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.ORACLE, OracleDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.ORACLE_12C, Oracle12cDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.POSTGRE_SQL, PostgreDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.PHOENIX, PhoenixDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.SQL_SERVER, SQLServerDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.SQL_SERVER2005, SQLServer2005Dialect.class);
|
|
|
- DIALECT_MAP.put(DbType.SQLITE, SQLiteDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.HSQL, HSQLDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.XU_GU, XuGuDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.KINGBASE_ES, KingbaseDialect.class);
|
|
|
- DIALECT_MAP.put(DbType.OTHER, UnknownDialect.class);
|
|
|
- }
|
|
|
+ private DialectRegistry dialectRegistry = new DialectRegistry();
|
|
|
|
|
|
@Test
|
|
|
void test() throws ClassNotFoundException {
|
|
|
DbType[] values = DbType.values();
|
|
|
- Assertions.assertEquals(values.length, DIALECT_MAP.size());
|
|
|
+ Assertions.assertEquals(values.length, dialectRegistry.getDialects().size());
|
|
|
for (DbType dbType : values) {
|
|
|
Class<?> aClass = Class.forName(dbType.getDialect());
|
|
|
IDialect dialect = DialectFactory.getDialect(dbType);
|
|
|
Assertions.assertEquals(dialect.getClass(), aClass);
|
|
|
- Assertions.assertEquals(aClass, DIALECT_MAP.get(dbType));
|
|
|
+ Assertions.assertEquals(aClass, dialectRegistry.getDialect(dbType).getClass());
|
|
|
}
|
|
|
}
|
|
|
|