@Test public void testDropTableColumnsIfExistWhenThreeKeysAreSuppliedAnOneDoesnotExist() throws Exception { Connection conn = connectionMock; String tableName = "tableName"; String column1 = "column1"; String column2 = "column2"; String column3 = "column3"; when(daoMock.columnExists(conn, tableName, column1)).thenReturn(true); when(daoMock.columnExists(conn, tableName, column2)).thenReturn(false); when(daoMock.columnExists(conn, tableName, column3)).thenReturn(true); List<String> keys = Arrays.asList(new String[] {column1, column2, column3}); DbUpgradeUtils.dropTableColumnsIfExist(conn, tableName, keys); verify(daoMock, times(1)).columnExists(conn, tableName, column1); verify(daoMock, times(1)).dropColumn(conn, tableName, column1); verify(daoMock, times(1)).columnExists(conn, tableName, column2); verify(daoMock, times(0)).dropColumn(conn, tableName, column2); verify(daoMock, times(1)).columnExists(conn, tableName, column3); verify(daoMock, times(1)).dropColumn(conn, tableName, column3); }
@Test public void testDropTableColumnsIfExistWhenOneKeysIsSuppliedAndColumnExists() throws Exception { Connection conn = connectionMock; String tableName = "tableName"; String column = "column"; when(daoMock.columnExists(conn, tableName, column)).thenReturn(true); List<String> columns = Arrays.asList(new String[] {column}); DbUpgradeUtils.dropTableColumnsIfExist(conn, tableName, columns); verify(daoMock, times(1)).columnExists(conn, tableName, column); verify(daoMock, times(1)).dropColumn(conn, tableName, column); }