IN PROGRESS - BATCH-672: Updated tests to use EasyMock 2.4 API

This commit is contained in:
trisberg
2008-07-28 17:25:08 +00:00
parent f2635b5f90
commit 7c3e80eed8
6 changed files with 35 additions and 51 deletions

View File

@@ -1,12 +1,12 @@
package org.springframework.batch.sample.domain.trade.internal;
import static org.easymock.EasyMock.*;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.easymock.MockControl;
import org.springframework.batch.sample.domain.trade.CustomerCredit;
import org.springframework.batch.sample.domain.trade.internal.CustomerCreditRowMapper;
import org.springframework.batch.sample.support.AbstractRowMapperTests;
import org.springframework.jdbc.core.RowMapper;
@@ -31,13 +31,10 @@ public class CustomerCreditRowMapperTests extends AbstractRowMapperTests {
return new CustomerCreditRowMapper();
}
protected void setUpResultSetMock(ResultSet rs, MockControl rsControl) throws SQLException {
rs.getInt(CustomerCreditRowMapper.ID_COLUMN);
rsControl.setReturnValue(ID);
rs.getString(CustomerCreditRowMapper.NAME_COLUMN);
rsControl.setReturnValue(CUSTOMER);
rs.getBigDecimal(CustomerCreditRowMapper.CREDIT_COLUMN);
rsControl.setReturnValue(CREDIT);
protected void setUpResultSetMock(ResultSet rs) throws SQLException {
expect(rs.getInt(CustomerCreditRowMapper.ID_COLUMN)).andReturn(ID);
expect(rs.getString(CustomerCreditRowMapper.NAME_COLUMN)).andReturn(CUSTOMER);
expect(rs.getBigDecimal(CustomerCreditRowMapper.CREDIT_COLUMN)).andReturn(CREDIT);
}
}

View File

@@ -1,17 +1,16 @@
package org.springframework.batch.sample.domain.trade.internal;
import static org.easymock.EasyMock.*;
import java.math.BigDecimal;
import org.easymock.MockControl;
import org.junit.Before;
import org.junit.Test;
import org.springframework.batch.sample.domain.trade.CustomerCredit;
import org.springframework.batch.sample.domain.trade.CustomerCreditDao;
import org.springframework.batch.sample.domain.trade.internal.CustomerCreditUpdateWriter;
public class CustomerCreditUpdateProcessorTests {
private MockControl<CustomerCreditDao> daoControl;
private CustomerCreditDao dao;
private CustomerCreditUpdateWriter writer;
private static final double CREDIT_FILTER = 355.0;
@@ -19,8 +18,7 @@ public class CustomerCreditUpdateProcessorTests {
@Before
public void setUp() {
//create mock writer
daoControl = MockControl.createControl(CustomerCreditDao.class);
dao = daoControl.getMock();
dao = createMock(CustomerCreditDao.class);
//create processor, set writer and credit filter
writer = new CustomerCreditUpdateWriter();
writer.setDao(dao);
@@ -31,7 +29,7 @@ public class CustomerCreditUpdateProcessorTests {
public void testProcess() throws Exception {
//set-up mock writer - no writer's method should be called
daoControl.replay();
replay(dao);
//create credit and set it to same value as credit filter
CustomerCredit credit = new CustomerCredit();
@@ -40,20 +38,20 @@ public class CustomerCreditUpdateProcessorTests {
writer.write(credit);
//verify method calls - no method should be called
//because credit is not greater then credit filter
daoControl.verify();
verify(dao);
//change credit to be greater than credit filter
credit.setCredit(new BigDecimal(CREDIT_FILTER + 1));
//reset and set-up writer - write method is expected to be called
daoControl.reset();
reset(dao);
dao.writeCredit(credit);
daoControl.replay();
replay(dao);
//call tested method
writer.write(credit);
//verify method calls
daoControl.verify();
verify(dao);
}
}

View File

@@ -27,11 +27,9 @@ import org.springframework.batch.item.ExecutionContext;
import org.springframework.batch.item.ItemStream;
import org.springframework.batch.item.ItemWriter;
import org.springframework.batch.sample.domain.trade.CustomerCredit;
import org.springframework.batch.sample.domain.trade.internal.FlatFileCustomerCreditDao;
public class FlatFileCustomerCreditDaoTests {
//private MockControl outputControl;
private ResourceLifecycleItemWriter output;
private FlatFileCustomerCreditDao writer;

View File

@@ -1,15 +1,14 @@
package org.springframework.batch.sample.domain.trade.internal;
import org.easymock.MockControl;
import static org.easymock.EasyMock.*;
import org.junit.Before;
import org.junit.Test;
import org.springframework.batch.sample.domain.trade.Trade;
import org.springframework.batch.sample.domain.trade.TradeDao;
import org.springframework.batch.sample.domain.trade.internal.TradeWriter;
public class TradeProcessorTests {
private MockControl<TradeDao> writerControl;
private TradeDao writer;
private TradeWriter processor;
@@ -17,8 +16,7 @@ public class TradeProcessorTests {
public void setUp() {
//create mock writer
writerControl = MockControl.createControl(TradeDao.class);
writer = writerControl.getMock();
writer = createMock(TradeDao.class);
//create processor
processor = new TradeWriter();
@@ -31,13 +29,13 @@ public class TradeProcessorTests {
Trade trade = new Trade();
//set-up mock writer
writer.writeTrade(trade);
writerControl.replay();
replay(writer);
//call tested method
processor.write(trade);
//verify method calls
writerControl.verify();
verify(writer);
}
}

View File

@@ -1,12 +1,12 @@
package org.springframework.batch.sample.domain.trade.internal;
import static org.easymock.EasyMock.*;
import java.math.BigDecimal;
import java.sql.ResultSet;
import java.sql.SQLException;
import org.easymock.MockControl;
import org.springframework.batch.sample.domain.trade.Trade;
import org.springframework.batch.sample.domain.trade.internal.TradeRowMapper;
import org.springframework.batch.sample.support.AbstractRowMapperTests;
import org.springframework.jdbc.core.RowMapper;
@@ -30,18 +30,11 @@ public class TradeRowMapperTests extends AbstractRowMapperTests {
return new TradeRowMapper();
}
protected void setUpResultSetMock(ResultSet rs, MockControl rsControl) throws SQLException {
rs.getString(TradeRowMapper.ISIN_COLUMN);
rsControl.setReturnValue(ISIN);
rs.getLong(TradeRowMapper.QUANTITY_COLUMN);
rsControl.setReturnValue(QUANTITY);
rs.getBigDecimal(TradeRowMapper.PRICE_COLUMN);
rsControl.setReturnValue(PRICE);
rs.getString(TradeRowMapper.CUSTOMER_COLUMN);
rsControl.setReturnValue(CUSTOMER);
protected void setUpResultSetMock(ResultSet rs) throws SQLException {
expect(rs.getString(TradeRowMapper.ISIN_COLUMN)).andReturn(ISIN);
expect(rs.getLong(TradeRowMapper.QUANTITY_COLUMN)).andReturn(QUANTITY);
expect(rs.getBigDecimal(TradeRowMapper.PRICE_COLUMN)).andReturn(PRICE);
expect(rs.getString(TradeRowMapper.CUSTOMER_COLUMN)).andReturn(CUSTOMER);
}
}

View File

@@ -1,11 +1,12 @@
package org.springframework.batch.sample.support;
import static org.easymock.EasyMock.*;
import java.sql.ResultSet;
import java.sql.SQLException;
import junit.framework.TestCase;
import org.easymock.MockControl;
import org.springframework.jdbc.core.RowMapper;
/**
@@ -19,9 +20,8 @@ public abstract class AbstractRowMapperTests extends TestCase {
private static final int IGNORED_ROW_NUMBER = 0;
//mock result set
private MockControl<ResultSet> rsControl = MockControl.createControl(ResultSet.class);
private ResultSet rs = rsControl.getMock();
private ResultSet rs = createMock(ResultSet.class);
/**
* @return Expected result of mapping the mock <code>ResultSet</code> by
* the mapper being tested.
@@ -33,18 +33,18 @@ public abstract class AbstractRowMapperTests extends TestCase {
*/
abstract protected RowMapper rowMapper();
/**
/*
* Define the behaviour of mock <code>ResultSet</code>.
*/
abstract protected void setUpResultSetMock(ResultSet rs, MockControl<ResultSet> rsControl) throws SQLException;
abstract protected void setUpResultSetMock(ResultSet rs) throws SQLException;
/**
/*
* Regular usage scenario.
*/
public void testRegularUse() throws SQLException {
setUpResultSetMock(rs, rsControl);
rsControl.replay();
setUpResultSetMock(rs);
replay(rs);
assertEquals(expectedDomainObject(), rowMapper().mapRow(rs, IGNORED_ROW_NUMBER));
}