"delete from schema.table where c2 = 123.45 and c1 = 'qwerty'",
    public void testMockExecute() throws Exception    {        String schemaName = "schema";        String tableName = "table";        String[] expected = {            "delete from schema.table where c2 = 1234 and c1 = 'toto'",            "delete from schema.table where c2 = 123.45 and c1 = 'qwerty'",        };        List valueList = new ArrayList();        valueList.add(new Object[]{"toto", "1234", Boolean.FALSE});        valueList.add(new Object[]{"qwerty", new Double("123.45"), "true"});        Column[] columns = new Column[]{            new Column("c1", DataType.VARCHAR),            new Column("c2", DataType.NUMERIC),            new Column("c3", DataType.BOOLEAN),        };        String[] primaryKeys = {"c2", "c1"};        ITable table = new DefaultTable(new DefaultTableMetaData(                tableName, columns, primaryKeys), valueList);        IDataSet dataSet = new DefaultDataSet(table);        // setup mock objects        MockBatchStatement statement = new MockBatchStatement();        statement.addExpectedBatchStrings(expected);        statement.setExpectedExecuteBatchCalls(1);        statement.setExpectedClearBatchCalls(1);        statement.setExpectedCloseCalls(1);        MockStatementFactory factory = new MockStatementFactory();        factory.setExpectedCreatePreparedStatementCalls(1);        factory.setupStatement(statement);        MockDatabaseConnection connection = new MockDatabaseConnection();        connection.setupDataSet(dataSet);        connection.setupSchema(schemaName);        connection.setupStatementFactory(factory);        connection.setExpectedCloseCalls(0);        // execute operation        new DeleteOperation().execute(connection, dataSet);        statement.verify();        factory.verify();        connection.verify();    }