mirror of
https://github.com/ebean-orm/ebean.git
synced 2024-04-21 10:51:47 +00:00
Merge remote-tracking branch 'upstream/master'
# Conflicts: # ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/DefaultDbMigration.java # ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/BaseTableDdl.java # ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/Db2HistoryDdl.java # ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/DbTriggerBasedHistoryDdl.java # ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/HanaHistoryDdl.java # ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PlatformDdl.java # ebean-ddl-generator/src/main/java/io/ebeaninternal/dbmigration/ddlgeneration/platform/PostgresHistoryDdl.java # ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.1.sql # ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/idx_db2.migrations # ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.1.sql # ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/idx_db2.migrations # ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.1.sql # ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/idx_db2.migrations # ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.1.sql # ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/idx_db2.migrations # ebean-test/src/test/resources/migrationtest/dbmigration/model/1.3.model.xml
This commit is contained in:
@@ -6,6 +6,7 @@ import io.ebean.annotation.Platform;
|
||||
import io.ebean.config.DatabaseConfig;
|
||||
import io.ebean.config.dbplatform.DbHistorySupport;
|
||||
import io.ebean.datasource.pool.ConnectionPool;
|
||||
import misc.migration.v1_0.ETable;
|
||||
import misc.migration.v1_1.EHistory;
|
||||
import misc.migration.v1_1.EHistory2;
|
||||
import org.junit.jupiter.api.Test;
|
||||
@@ -84,7 +85,10 @@ public class DbMigrationTest extends BaseTestCase {
|
||||
"migtest_mtm_c_migtest_mtm_m",
|
||||
"migtest_mtm_m_migtest_mtm_c",
|
||||
"migtest_oto_child",
|
||||
"migtest_oto_master");
|
||||
"migtest_oto_master",
|
||||
"table",
|
||||
"\"table\"",
|
||||
"`table`");
|
||||
((ConnectionPool)server().dataSource()).offline();
|
||||
((ConnectionPool)server().dataSource()).online();
|
||||
|
||||
@@ -117,7 +121,7 @@ public class DbMigrationTest extends BaseTestCase {
|
||||
|
||||
assertThat(server().execute(update)).isEqualTo(2);
|
||||
}
|
||||
|
||||
testReservedKeywords();
|
||||
createHistoryEntities();
|
||||
if (isOracle()) {
|
||||
// Oracle does not like to convert varchar to integer
|
||||
@@ -262,6 +266,32 @@ public class DbMigrationTest extends BaseTestCase {
|
||||
}
|
||||
}
|
||||
|
||||
// do some history tests with V1.1 models
|
||||
private void testReservedKeywords() {
|
||||
DatabaseConfig config = new DatabaseConfig();
|
||||
config.setName(server().name());
|
||||
config.loadFromProperties(server().pluginApi().config().getProperties());
|
||||
config.setDataSource(server().dataSource());
|
||||
config.setReadOnlyDataSource(server().dataSource());
|
||||
config.setDdlGenerate(false);
|
||||
config.setDdlRun(false);
|
||||
config.setRegister(false);
|
||||
config.setPackages(Collections.singletonList("misc.migration.v1_0"));
|
||||
|
||||
Database tmpServer = DatabaseFactory.create(config);
|
||||
try {
|
||||
ETable table = new misc.migration.v1_0.ETable();
|
||||
table.setFrom("foo");
|
||||
table.setTo("bar");
|
||||
table.setIndex("id");
|
||||
tmpServer.save(table);
|
||||
table = tmpServer.find(ETable.class).where().eq("index", "id").findOne();
|
||||
assert table != null;
|
||||
} finally {
|
||||
tmpServer.shutdown(false, false);
|
||||
}
|
||||
}
|
||||
|
||||
private void createHistoryEntities() {
|
||||
SqlUpdate update = server().sqlUpdate("insert into migtest_e_history (id, test_string) values (1, '42')");
|
||||
assertThat(server().execute(update)).isEqualTo(1);
|
||||
|
||||
Reference in New Issue
Block a user