From 11cc0250ce27e120cd6b61395e6a35013bdcc91b Mon Sep 17 00:00:00 2001 From: dsyer Date: Sat, 3 Apr 2010 10:21:05 +0000 Subject: [PATCH] Tidy up tests --- ...ConcurrentMapExecutionContextDaoTests.java | 7 +- .../ConcurrentTransactionAwareProxyTests.java | 71 +++++++++++-------- 2 files changed, 45 insertions(+), 33 deletions(-) diff --git a/spring-batch-core-tests/src/test/java/org/springframework/batch/core/test/repository/ConcurrentMapExecutionContextDaoTests.java b/spring-batch-core-tests/src/test/java/org/springframework/batch/core/test/repository/ConcurrentMapExecutionContextDaoTests.java index a3f102ec1..1fe63dd59 100644 --- a/spring-batch-core-tests/src/test/java/org/springframework/batch/core/test/repository/ConcurrentMapExecutionContextDaoTests.java +++ b/spring-batch-core-tests/src/test/java/org/springframework/batch/core/test/repository/ConcurrentMapExecutionContextDaoTests.java @@ -21,6 +21,7 @@ import static org.junit.Assert.assertEquals; import java.util.concurrent.Callable; import java.util.concurrent.CompletionService; import java.util.concurrent.ExecutorCompletionService; +import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import org.junit.Test; @@ -74,8 +75,8 @@ public class ConcurrentMapExecutionContextDaoTests { @Test public void testConcurrentTransactionalSaveUpdate() throws Exception { - CompletionService completionService = new ExecutorCompletionService(Executors - .newFixedThreadPool(3)); + ExecutorService executor = Executors.newFixedThreadPool(3); + CompletionService completionService = new ExecutorCompletionService(executor); final int outerMax = 10; final int innerMax = 100; @@ -111,6 +112,8 @@ public class ConcurrentMapExecutionContextDaoTests { completionService.take().get(); } + + executor.shutdown(); } diff --git a/spring-batch-infrastructure/src/test/java/org/springframework/batch/support/transaction/ConcurrentTransactionAwareProxyTests.java b/spring-batch-infrastructure/src/test/java/org/springframework/batch/support/transaction/ConcurrentTransactionAwareProxyTests.java index a6fc4c528..68f9676f2 100644 --- a/spring-batch-infrastructure/src/test/java/org/springframework/batch/support/transaction/ConcurrentTransactionAwareProxyTests.java +++ b/spring-batch-infrastructure/src/test/java/org/springframework/batch/support/transaction/ConcurrentTransactionAwareProxyTests.java @@ -28,8 +28,11 @@ import java.util.concurrent.Callable; import java.util.concurrent.CompletionService; import java.util.concurrent.ExecutionException; import java.util.concurrent.ExecutorCompletionService; +import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import org.junit.After; +import org.junit.Before; import org.junit.Test; import org.springframework.transaction.PlatformTransactionManager; import org.springframework.transaction.TransactionStatus; @@ -49,16 +52,31 @@ public class ConcurrentTransactionAwareProxyTests { int innerMax = 10; - @Test(expected=Throwable.class) + private ExecutorService executor; + + private CompletionService> completionService; + + @Before + public void init() { + executor = Executors.newFixedThreadPool(outerMax); + completionService = new ExecutorCompletionService>(executor); + } + + @After + public void close() { + executor.shutdown(); + } + + @Test(expected = Throwable.class) public void testConcurrentTransactionalSet() throws Exception { - Set set = TransactionAwareProxyFactory.createTransactionalSet(); - testSet(set); + Set set = TransactionAwareProxyFactory.createTransactionalSet(); + testSet(set); } @Test public void testConcurrentTransactionalAppendOnlySet() throws Exception { - Set set = TransactionAwareProxyFactory.createAppendOnlyTransactionalSet(); - testSet(set); + Set set = TransactionAwareProxyFactory.createAppendOnlyTransactionalSet(); + testSet(set); } @Test @@ -66,8 +84,8 @@ public class ConcurrentTransactionAwareProxyTests { List list = TransactionAwareProxyFactory.createAppendOnlyTransactionalList(); testList(list); } - - @Test(expected=Throwable.class) + + @Test(expected = Throwable.class) public void testConcurrentTransactionalList() throws Exception { List list = TransactionAwareProxyFactory.createTransactionalList(); testList(list); @@ -84,7 +102,7 @@ public class ConcurrentTransactionAwareProxyTests { Map> map = TransactionAwareProxyFactory.createTransactionalMap(); testMap(map); } - + @Test public void testTransactionalContains() throws Exception { final Map> map = TransactionAwareProxyFactory.createAppendOnlyTransactionalMap(); @@ -93,13 +111,10 @@ public class ConcurrentTransactionAwareProxyTests { return map.containsKey("foo"); } }); - assertFalse(result); + assertFalse(result); } - - private void testSet(final Set set) throws Exception { - CompletionService> completionService = new ExecutorCompletionService>(Executors - .newFixedThreadPool(outerMax)); + private void testSet(final Set set) throws Exception { for (int i = 0; i < outerMax; i++) { @@ -129,9 +144,6 @@ public class ConcurrentTransactionAwareProxyTests { private void testList(final List list) throws Exception { - CompletionService> completionService = new ExecutorCompletionService>(Executors - .newFixedThreadPool(outerMax)); - for (int i = 0; i < outerMax; i++) { completionService.submit(new Callable>() { @@ -159,29 +171,26 @@ public class ConcurrentTransactionAwareProxyTests { private void testMap(final Map> map) throws Exception { - CompletionService> completionService = new ExecutorCompletionService>(Executors - .newFixedThreadPool(outerMax)); - int numberOfKeys = outerMax; for (int i = 0; i < outerMax; i++) { - for (int j=0; j>() { - public List call() throws Exception { - List list = new ArrayList(); - for (int i = 0; i < innerMax; i++) { - String value = "bar" + i; - list.add(saveInMapAndAssert(map, id, value).get("foo")); + completionService.submit(new Callable>() { + public List call() throws Exception { + List list = new ArrayList(); + for (int i = 0; i < innerMax; i++) { + String value = "bar" + i; + list.add(saveInMapAndAssert(map, id, value).get("foo")); + } + return list; } - return list; - } - }); + }); } - for (int j=0; j