#2205 - [oracle] Incorrect DDL generated for alter table add column

This commit is contained in:
rob bygrave committed 2021-03-23 23:51:07 +13:00
1 parent e68adf53bc
commit abfa841ed7
2 files changed
+21

No files matched your search

@@ -9,11 +9,15 @@ import io.ebean.config.dbplatform.mysql.MySqlPlatform;
import io.ebean.config.dbplatform.oracle.OraclePlatform;
import io.ebean.config.dbplatform.postgres.PostgresPlatform;
import io.ebean.config.dbplatform.sqlserver.SqlServer17Platform;
import io.ebeaninternal.dbmigration.ddlgeneration.DdlWrite;
import io.ebeaninternal.dbmigration.ddlgeneration.PlatformDdlBuilder;
import io.ebeaninternal.dbmigration.migration.AlterColumn;
import io.ebeaninternal.dbmigration.migration.AlterForeignKey;
import io.ebeaninternal.dbmigration.migration.Column;
import org.junit.Test;
import java.io.IOException;
import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
@@ -238,6 +242,22 @@ public class PlatformDdl_AlterColumnTest {
assertTrue(exceptionCaught);
}
@Test
public void oracle_alterTableAddColumn() throws IOException {
DdlWrite write = new DdlWrite();
oraDdl.alterTableAddColumn(write.apply(), "my_table", simpleColumn(), false, "1");
assertThat(write.apply().getBuffer()).isEqualTo("alter table my_table add my_column int default 1 not null;\n");
}
private Column simpleColumn() {
Column column = new Column();
column.setName("my_column");
column.setType("int");
column.setNotnull(true);
column.setDefaultValue("1");
return column;
}
@Test
public void useIdentityType_h2() {
assertEquals(h2Ddl.useIdentityType(null), IdType.IDENTITY);