1 package com.diasparsoftware.jdbc.test; 2 3 import java.util.Arrays; 4 5 import junit.framework.TestCase; 6 7 import com.diasparsoftware.java.sql.PreparedStatementData; 8 import com.diasparsoftware.java.util.DateUtil; 9 import com.diasparsoftware.jdbc.*; 10 import com.mockobjects.sql.*; 11 12 public class ExecuteInsertStatementTest extends TestCase { 13 public void testExecuteInsertStatement() throws Exception { 14 String insertSqlString = "insert into HELLO (A, B, C) values (?, ?, ?)"; 15 int expectedRowsInserted = 1; 16 17 MockPreparedStatement mockInsertStatement = new MockPreparedStatement(); 18 19 mockInsertStatement.setExpectedClearParametersCalls(1); 20 mockInsertStatement.setExpectedCloseCalls(1); 21 mockInsertStatement.addUpdateCount(1); 22 mockInsertStatement.addExpectedSetParameters(new Object[]{"a", 23 new Integer(762), JdbcUtil.makeTimestamp(1974, 5, 4)}); 24 25 MockConnection2 mockConnection = new MockConnection2(); 26 mockConnection.setupAddPreparedStatement(insertSqlString, 27 mockInsertStatement); 28 29 PreparedStatementExecuter queryExecuter = new JdbcQueryExecuter( 30 mockConnection); 31 32 PreparedStatementData insertStatementData = new PreparedStatementData(); 33 insertStatementData.sqlString = insertSqlString; 34 insertStatementData.parameters = Arrays.asList(new Object[]{"a", 35 new Integer(762), DateUtil.makeDate(1974, 5, 4)}); 36 37 assertEquals(expectedRowsInserted, queryExecuter 38 .executeInsertStatement(insertStatementData)); 39 40 mockInsertStatement.verify(); 41 mockConnection.verify(); 42 } 43 }