### Question:
UpgradeCatalog272 extends AbstractUpgradeCatalog { @Override protected void executeDDLUpdates() throws AmbariException, SQLException { moveBlueprintProvisioningState(); removeLastValidState(); } @Inject  UpgradeCatalog272(Injector injector); @Override String getSourceVersion(); @Override String getTargetVersion();  }### Answer:
@Test public void testExecuteDDLUpdates() throws Exception { dbAccessor.dropColumn(eq(CLUSTERS_TABLE), eq(BLUEPRINT_PROVISIONING_STATE_COLUMN)); expectLastCall().once(); Capture<DBAccessor.DBColumnInfo> blueprintProvisioningStateColumnCapture = newCapture(CaptureType.ALL); dbAccessor.addColumn(eq(HOST_COMPONENT_DESIRED_STATE_TABLE), capture(blueprintProvisioningStateColumnCapture)); expectLastCall().once(); dbAccessor.dropColumn(eq(HOST_COMPONENT_STATE_TABLE), eq(LAST_LIVE_STATE_COLUMN)); expectLastCall().once(); replay(dbAccessor, injector); UpgradeCatalog272 upgradeCatalog272 = new UpgradeCatalog272(injector); upgradeCatalog272.dbAccessor = dbAccessor; upgradeCatalog272.executeDDLUpdates(); DBAccessor.DBColumnInfo capturedBlueprintProvisioningStateColumn = blueprintProvisioningStateColumnCapture.getValue(); assertEquals(BLUEPRINT_PROVISIONING_STATE_COLUMN, capturedBlueprintProvisioningStateColumn.getName()); assertEquals(BlueprintProvisioningState.NONE, capturedBlueprintProvisioningStateColumn.getDefaultValue()); assertEquals(String.class, capturedBlueprintProvisioningStateColumn.getType()); verify(dbAccessor); }