From 1d91253ff553b67f2e7fbf3500cfe1c2230f16c9 Mon Sep 17 00:00:00 2001 From: robokaso Date: Tue, 29 Jul 2008 09:15:51 +0000 Subject: [PATCH] IN PROGRESS - BATCH-748: Fix EasyMock warnings in Infrastructure --- ...sorItemReaderStatefulIntegrationTests.java | 36 +++++----- .../database/IbatisItemReaderCommonTests.java | 1 + .../IbatisItemReaderIntegrationTests.java | 1 + .../support/CompositeItemWriterTests.java | 17 +++-- .../support/DelegatingItemWriterTests.java | 66 ++++++++++--------- .../validator/ValidatingItemReaderTests.java | 18 ++--- 6 files changed, 71 insertions(+), 68 deletions(-) diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/HibernateCursorItemReaderStatefulIntegrationTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/HibernateCursorItemReaderStatefulIntegrationTests.java index 0879de3ca..1a5f3e46f 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/HibernateCursorItemReaderStatefulIntegrationTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/HibernateCursorItemReaderStatefulIntegrationTests.java @@ -1,6 +1,6 @@ package org.springframework.batch.item.database; -import org.easymock.MockControl; +import static org.easymock.EasyMock.*; import org.hibernate.Query; import org.hibernate.SessionFactory; import org.hibernate.classic.Session; @@ -21,32 +21,28 @@ public class HibernateCursorItemReaderStatefulIntegrationTests extends Hibernate //Ensure close is called on the stateful session correctly. public void testStatfulClose(){ - MockControl sessionFactoryControl = MockControl.createControl(SessionFactory.class); - SessionFactory sessionFactory = sessionFactoryControl.getMock(); - MockControl sessionControl = MockControl.createControl(Session.class); - Session session = sessionControl.getMock(); - MockControl resultsControl = MockControl.createNiceControl(Query.class); - Query scrollableResults = resultsControl.getMock(); + SessionFactory sessionFactory = createMock(SessionFactory.class); + Session session = createMock(Session.class); + Query scrollableResults = createNiceMock(Query.class); HibernateCursorItemReader itemReader = new HibernateCursorItemReader(); itemReader.setSessionFactory(sessionFactory); itemReader.setQueryString("testQuery"); itemReader.setUseStatelessSession(false); - sessionFactory.openSession(); - sessionFactoryControl.setReturnValue(session); - session.createQuery("testQuery"); - sessionControl.setReturnValue(scrollableResults); - scrollableResults.setFetchSize(0); - resultsControl.setReturnValue(scrollableResults); - session.close(); - sessionControl.setReturnValue(null); - sessionFactoryControl.replay(); - sessionControl.replay(); - resultsControl.replay(); + expect(sessionFactory.openSession()).andReturn(session); + expect(session.createQuery("testQuery")).andReturn(scrollableResults); + expect(scrollableResults.setFetchSize(0)).andReturn(scrollableResults); + expect(session.close()).andReturn(null); + + replay(sessionFactory); + replay(session); + replay(scrollableResults); + itemReader.open(new ExecutionContext()); itemReader.close(new ExecutionContext()); - sessionFactoryControl.verify(); - sessionControl.verify(); + + verify(sessionFactory); + verify(session); } } diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderCommonTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderCommonTests.java index 7af90aaa5..b48caee44 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderCommonTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderCommonTests.java @@ -9,6 +9,7 @@ import org.springframework.orm.ibatis.SqlMapClientFactoryBean; import com.ibatis.sqlmap.client.SqlMapClient; +@SuppressWarnings("unchecked") public class IbatisItemReaderCommonTests extends CommonDatabaseItemStreamItemReaderTests { protected ItemReader getItemReader() throws Exception { diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderIntegrationTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderIntegrationTests.java index 8df0d0ca5..966d89489 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderIntegrationTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/database/IbatisItemReaderIntegrationTests.java @@ -13,6 +13,7 @@ import com.ibatis.sqlmap.client.SqlMapClient; * * @author Robert Kasanicky */ +@SuppressWarnings("unchecked") public class IbatisItemReaderIntegrationTests extends AbstractDataSourceItemReaderIntegrationTests { protected ItemReader createItemReader() throws Exception { diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/CompositeItemWriterTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/CompositeItemWriterTests.java index 84da253a8..48cbc10f9 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/CompositeItemWriterTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/CompositeItemWriterTests.java @@ -5,7 +5,7 @@ import java.util.List; import junit.framework.TestCase; -import org.easymock.MockControl; +import static org.easymock.EasyMock.*; import org.springframework.batch.item.ItemWriter; /** @@ -22,31 +22,30 @@ public class CompositeItemWriterTests extends TestCase { * Regular usage scenario. * All injected processors should be called. */ + public void testProcess() throws Exception { final int NUMBER_OF_WRITERS = 10; Object data = new Object(); - List controls = new ArrayList(NUMBER_OF_WRITERS); List> writers = new ArrayList>(NUMBER_OF_WRITERS); for (int i = 0; i < NUMBER_OF_WRITERS; i++) { - MockControl control = MockControl.createStrictControl(ItemWriter.class); - ItemWriter writer = (ItemWriter) control.getMock(); + @SuppressWarnings("unchecked") + ItemWriter writer = createStrictMock(ItemWriter.class); writer.write(data); - control.setVoidCallable(); - control.replay(); + expectLastCall().once(); + replay(writer); writers.add(writer); - controls.add(control); } itemProcessor.setDelegates(writers); itemProcessor.write(data); - for (MockControl control : controls) { - control.verify(); + for (ItemWriter writer : writers) { + verify(writer); } } diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/DelegatingItemWriterTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/DelegatingItemWriterTests.java index 53f169281..8d620dd9f 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/DelegatingItemWriterTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/support/DelegatingItemWriterTests.java @@ -17,77 +17,83 @@ package org.springframework.batch.item.support; import junit.framework.TestCase; -import org.easymock.MockControl; +import static org.easymock.EasyMock.*; import org.springframework.batch.item.ItemWriter; import org.springframework.batch.item.support.DelegatingItemWriter; /** * @author Lucas Ward - * + * */ public class DelegatingItemWriterTests extends TestCase { - MockControl writerControl = MockControl.createControl(ItemWriter.class); - ItemWriter itemWriter; + @SuppressWarnings("unchecked") + ItemWriter itemWriter = createMock(ItemWriter.class); + DelegatingItemWriter delegatingWriter; - - /* (non-Javadoc) + + /* + * (non-Javadoc) + * * @see junit.framework.TestCase#setUp() */ + protected void setUp() throws Exception { super.setUp(); - - itemWriter = writerControl.getMock(); + delegatingWriter = new DelegatingItemWriter(); delegatingWriter.setDelegate(itemWriter); } - public void testFlush() throws Exception{ + public void testFlush() throws Exception { itemWriter.flush(); - writerControl.replay(); + expectLastCall().once(); + replay(itemWriter); delegatingWriter.flush(); - writerControl.verify(); + verify(itemWriter); } - - public void testClear() throws Exception{ + + public void testClear() throws Exception { itemWriter.clear(); - writerControl.replay(); + expectLastCall().once(); + replay(itemWriter); delegatingWriter.clear(); - writerControl.verify(); + verify(itemWriter); } - - public void testCreation() throws Exception{ - try{ + + public void testCreation() throws Exception { + try { delegatingWriter.setDelegate(null); delegatingWriter.afterPropertiesSet(); fail(); } - catch(IllegalArgumentException ex){ - //expected + catch (IllegalArgumentException ex) { + // expected } } - - public void testWrite() throws Exception{ - + + public void testWrite() throws Exception { + ProcessingWriter writer = new ProcessingWriter(); writer.setDelegate(itemWriter); Object item = new Object(); itemWriter.write(item); - writerControl.replay(); + expectLastCall().once(); + replay(itemWriter); writer.write(item); - writerControl.verify(); + verify(itemWriter); assertTrue(writer.isDoProcessCalled()); } - - private class ProcessingWriter extends DelegatingItemWriter{ - + + private class ProcessingWriter extends DelegatingItemWriter { + boolean doProcessCalled = false; - + protected O doProcess(I item) throws Exception { doProcessCalled = true; return super.doProcess(item); } - + public boolean isDoProcessCalled() { return doProcessCalled; } diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/validator/ValidatingItemReaderTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/validator/ValidatingItemReaderTests.java index 6f57b115f..63363c05f 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/validator/ValidatingItemReaderTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/item/validator/ValidatingItemReaderTests.java @@ -17,7 +17,7 @@ package org.springframework.batch.item.validator; import junit.framework.TestCase; -import org.easymock.MockControl; +import static org.easymock.EasyMock.*; import org.springframework.batch.item.ItemReader; import org.springframework.batch.item.support.AbstractItemReader; @@ -30,7 +30,6 @@ public class ValidatingItemReaderTests extends TestCase { ItemReader inputSource; ValidatingItemReader itemProvider; Validator validator; - MockControl validatorControl = MockControl.createControl(Validator.class); /* (non-Javadoc) * @see junit.framework.TestCase#setUp() @@ -39,7 +38,7 @@ public class ValidatingItemReaderTests extends TestCase { super.setUp(); inputSource = new MockItemReader(this); - validator = (Validator)validatorControl.getMock(); + validator = createMock(Validator.class); itemProvider = new ValidatingItemReader(); itemProvider.setItemReader(inputSource); itemProvider.setValidator(validator); @@ -72,16 +71,17 @@ public class ValidatingItemReaderTests extends TestCase { public void testValidation() throws Exception{ validator.validate(this); - validatorControl.replay(); + expectLastCall().once(); + replay(validator); assertEquals(itemProvider.read(), this); - validatorControl.verify(); + verify(validator); } public void testValidationException() throws Exception{ validator.validate(this); - validatorControl.setThrowable(new ValidationException("")); - validatorControl.replay(); + expectLastCall().andThrow(new ValidationException("")); + replay(validator); try{ itemProvider.read(); fail(); @@ -91,11 +91,11 @@ public class ValidatingItemReaderTests extends TestCase { } public void testNullInput() throws Exception{ - validatorControl.replay(); + replay(validator); itemProvider.setItemReader(new MockItemReader(null)); assertNull(itemProvider.read()); //assert validator wasn't called. - validatorControl.verify(); + verify(validator); } private static class MockItemReader extends AbstractItemReader {