expect(conn.setSavePoint(isA(String.class))).andReturn(savePoint);
conn.commit(savePoint);
expect(connectionSource.getDatabaseType()).andReturn(databaseType);
expect(connectionSource.getReadWriteConnection()).andReturn(conn);
expect(connectionSource.saveSpecialConnection(conn)).andReturn(true);
connectionSource.clearSpecialConnection(conn);
connectionSource.releaseConnection(conn);
replay(connectionSource, conn, savePoint);
TransactionManager tm = new TransactionManager(connectionSource);
tm.callInTransaction(new Callable<Void>() {
public Void call() throws Exception {