@Test public void constructor() { AddAutoIncrementChange change = new AddAutoIncrementChange(); assertEquals("addAutoIncrement", change.getChangeMetaData().getName()); assertEquals("Set Column as Auto-Increment", change.getChangeMetaData().getDescription()); assertEquals("column", change.getChangeMetaData().getAppliesTo().iterator().next()); }
@Override @Test public void generateStatement() throws Exception { AddAutoIncrementChange change = new AddAutoIncrementChange(); change.setSchemaName("SCHEMA_NAME"); change.setTableName("TABLE_NAME"); change.setColumnName("COLUMN_NAME"); change.setColumnDataType("DATATYPE(255)"); testChangeOnAllExcept( change, new GenerateAllValidator() { public void validate(SqlStatement[] sqlStatements, Database database) { assertEquals(1, sqlStatements.length); assertTrue(sqlStatements[0] instanceof AddAutoIncrementStatement); assertEquals( "SCHEMA_NAME", ((AddAutoIncrementStatement) sqlStatements[0]).getSchemaName()); assertEquals( "TABLE_NAME", ((AddAutoIncrementStatement) sqlStatements[0]).getTableName()); assertEquals( "COLUMN_NAME", ((AddAutoIncrementStatement) sqlStatements[0]).getColumnName()); assertEquals( "DATATYPE(255)", ((AddAutoIncrementStatement) sqlStatements[0]).getColumnDataType()); } }, PostgresDatabase.class); testChange( change, new GenerateAllValidator() { public void validate(SqlStatement[] sqlStatements, Database database) { assertEquals(3, sqlStatements.length); assertTrue(sqlStatements[0] instanceof CreateSequenceStatement); assertTrue(sqlStatements[1] instanceof SetNullableStatement); assertTrue(sqlStatements[2] instanceof AddDefaultValueStatement); } }, PostgresDatabase.class); }
@Override @Test public void getConfirmationMessage() throws Exception { AddAutoIncrementChange change = new AddAutoIncrementChange(); change.setSchemaName("SCHEMA_NAME"); change.setTableName("TABLE_NAME"); change.setColumnName("COLUMN_NAME"); change.setColumnDataType("DATATYPE(255)"); assertEquals("Auto-increment added to TABLE_NAME.COLUMN_NAME", change.getConfirmationMessage()); }
@Test public void changeMetaDataCreatedCorrectly() { AddAutoIncrementChange change = new AddAutoIncrementChange(); ChangeMetaData metaData = change.getChangeMetaData(); assertEquals("addAutoIncrement", metaData.getName()); }